weekly-report-generator
Gitのコミット履歴から、複数のプロジェクトや期間をまとめて、専門用語をビジネス用語に変換し、カスタムテンプレートで週報を自動生成するSkill。
📜 元の英語説明(参考)
从Git提交记录生成专业工作周报。支持单周/多周批量生成、多项目汇总、自定义模板(Markdown/Word)。自动将技术术语转换为业务语言,补充下周计划/本周总结/问题和风险章节。使用场景:(1) 从Git日志生成本周工作汇报 (2) 将多个项目的提交记录汇总为一份周报 (3) 基于自定义Word模板生成领导要求的格式 (4) 批量生成一个月或多周的周报
🇯🇵 日本人クリエイター向け解説
Gitのコミット履歴から、複数のプロジェクトや期間をまとめて、専門用語をビジネス用語に変換し、カスタムテンプレートで週報を自動生成するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 この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-17
- 取得日時
- 2026-05-17
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
週報生成器
Gitのコミット履歴からプロフェッショナルな業務週報を自動生成します。単週/複数週の一括生成に対応しています。
核心原則
- 主子分離:メインエージェントがスケジューリングを担当し、サブエージェントが実際の生成を担当します。
- 簡潔な出力:コミットメッセージの配列のみを出力し、冗長な情報は含みません。
- Gitログの読み取りのみ:プロジェクトのソースコードファイルの読み取りは禁止します。
- 必須の内容クリーンアップ:技術用語をビジネス言語に変換します(AIが実行し、スキップできません)。
- タスク管理:TodoWriteツールを使用してタスクリストを作成し、各週報の生成ステータスを追跡します。
クイックスタート
週報の生成は2つのステップで完了します。
Step 1: オーケストレーションスクリプトを実行してデータを準備 → Step 2: 各週報を並行処理
Step 1: オーケストレーションスクリプトの実行(データ準備)
python scripts/orchestrate_reports.py \
--paths "E:\プロジェクト1,E:\プロジェクト2" \
--time "本月" \
--output "E:\週報出力" \
--template "E:\テンプレート.docx" \
--format docx \
--naming "第一週週報,第二週週報,第三週週報,第四週週報"
スクリプトが自動で完了すること:
- 時間表現の解析(今週/今月/2025-1-1-2025-1-31)
- プロジェクトパスと出力パスの検証
- テンプレートファイルの分析(補完が必要なセクションの識別)
- 各週ごとの独立したタスク設定ファイルの生成
- 二次確認情報とClaude Code呼び出し説明の生成
出力ファイル({出力パス}/tmp/にあります):
time_result.json- 時間解析結果template_structure.json- テンプレート構造(テンプレートが提供された場合)week_XX-task.json- 各週のタスク設定claude_instruction.md- Claude Code呼び出し説明
Step 2: 各週報の並行処理(AI実行)
タスクリストの作成(必須):
# TodoWriteツールを使用してタスクリストを作成
todos = [
{"content": "呼び出し説明と参考ドキュメントを読み込む", "status": "pending", "activeForm": "呼び出し説明と参考ドキュメントを読み込む"},
{"content": "第1週のサブエージェントを起動する", "status": "pending", "activeForm": "第1週のサブエージェントを起動する"},
{"content": "第2週のサブエージェントを起動する", "status": "pending", "activeForm": "第2週のサブエージェントを起動する"},
# ... 各週ごとにタスクを作成
{"content": "すべての結果をまとめ、一時ファイルをクリーンアップする", "status": "pending", "activeForm": "すべての結果をまとめ、一時ファイルをクリーンアップする"}
]
参考ドキュメントの読み込み:
- スクリプトパラメータが必要:
references/script-api-reference.mdを読んで詳細なパラメータを確認してください。
ワークフロー:
- 呼び出し説明の読み込み:
{出力パス}/tmp/claude_instruction.md(最初のタスクをin_progressにマーク) - サブエージェントの並行起動:Taskツールを使用して、各週ごとに独立した汎用サブエージェントを起動します。
- 📘 呼び出し方法:
references/workflow.mdの2.2節にある詳細な例を参照してください。 - 同じ応答内でTaskツールを複数回呼び出すことで並行処理を実現します。
- 各サブタスクのステータスをマークします(起動時 → in_progress、完了時 → completed)。
- ⚠️ 重要:サブエージェントは簡潔な成功/失敗ステータスのみを返し、詳細なレポートは出力しないでください。
- 📘 呼び出し方法:
- 結果の集計:すべてのサブタスクの成功/失敗ステータスを収集します(in_progressにマーク)。
- 一時ファイルのクリーンアップ:成功した一時ファイルは削除し、失敗したファイルはデバッグのために残します(completedにマーク)。
⚠️ サブエージェントの出力規範(重要):
- ✅ 簡潔なステータスのみを返します:「✅ 第X週週報生成成功」または「❌ 第X週週報生成失敗:[原因]」
- ❌ 詳細な作業内容、データ統計、用語変換例などは出力しないでください。
- ❌ 詳細な実行手順説明は出力しないでください。
- ✅ テンプレートに厳密に従って出力:
- テンプレート(--templateパラメータ)が提供された場合:テンプレート形式の週報ファイルのみを出力します。
完全なワークフローとTaskツール呼び出し例:📘 workflow.md
参考ドキュメント
📘 workflow.md
完全なワークフローガイド。以下を含みます:
- 詳細なStep 2の実行手順
- サブエージェントタスクプロンプトテンプレート(直接コピーして使用可能)
- 一時ファイル構造とクリーンアップルール
📘 examples.md
一般的な使用シナリオの例:
- 例1:今月の週報を生成(Markdown形式)
- 例2:Wordテンプレートを使用
- 例3:複数週の週報を一括生成
- 例4:複数プロジェクトの集計
📘 script-api-reference.md
Pythonスクリプトの詳細な呼び出しパラメータと使用例:
parse_time.py- 時間解析analyze_template.py- テンプレート分析get_git_logs.py- Gitログ取得(簡潔モード)fill_template.py- テンプレートの入力とエクスポートorchestrate_reports.py- すべてのステップのオーケストレーション
パラメータ説明
orchestrate_reports.py パラメータ
--paths(必須):プロジェクトパスのリスト、カンマ区切り--time(必須):時間表現- 相対時間:
本周、上周、本月、上月、本年、去年 - 絶対時間:
YYYY-MM-DDまたはYYYY-MM-DD-YYYY-MM-DD
- 相対時間:
--output(必須):出力ディレクトリパス--template(オプション):テンプレートファイルパス(.mdと.docxに対応)--format(オプション、デフォルト md):出力形式(mdまたはdocx)--naming(オプション):週報命名規則のリスト、カンマ区切り- 推奨:各週報にカスタムファイル名を指定します。
- 例:
--naming "華電第一週週報,華電第二週週報" - 命名規則の数は、生成される週報の数と一致する必要があります。
- 指定しない場合はデフォルトの命名を使用します:
第X週週報.docx
時間表現の例
| 表現 | 説明 | 生成される週報 |
|---|---|---|
本周 |
現在の週の月曜日から金曜日 | 1件 |
本月 |
今月の1日から最終日まで(週ごとに分割) | 4-5件 |
2025-1-1-2025-1-31 |
指定された期間 | 週ごとに分割 |
2025-1-15 |
指定された日付が含まれる週 | 1件 |
よくある質問
Q: 一時ファイルはどこに保存されますか?
A: {出力パス}/tmp/ ディレクトリに保存され、成功後に自動的にクリーンアップされます。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
周报生成器
从Git提交记录自动生成专业工作周报,支持单周/多周批量生成。
核心原则
- 主子分离:主智能体负责调度,子智能体负责实际生成
- 精简输出:只输出提交消息数组,不包含冗余信息
- 只读Git日志:禁止读取项目源代码文件
- 必须内容清洗:技术术语转换为业务语言(AI执行,不可跳过)
- 任务管理:使用 TodoWrite 工具创建任务清单,追踪每个周报的生成状态
快速开始
生成周报只需 2 个步骤:
Step 1: 运行编排脚本准备数据 → Step 2: 并行处理每个周报
Step 1: 运行编排脚本(准备数据)
python scripts/orchestrate_reports.py \
--paths "E:\项目1,E:\项目2" \
--time "本月" \
--output "E:\周报输出" \
--template "E:\模板.docx" \
--format docx \
--naming "第一周周报,第二周周报,第三周周报,第四周周报"
脚本自动完成:
- 解析时间表达式(本周/本月/2025-1-1-2025-1-31)
- 验证项目路径和输出路径
- 分析模板文件(识别需要补充的章节)
- 为每个周生成独立任务配置文件
- 生成二次确认信息和 Claude Code 调用说明
输出文件(位于 {输出路径}/tmp/):
time_result.json- 时间解析结果template_structure.json- 模板结构(如果提供模板)week_XX-task.json- 每个周的任务配置claude_instruction.md- Claude Code 调用说明
Step 2: 并行处理每个周报(AI 执行)
创建任务清单(必须):
# 使用 TodoWrite 工具创建任务清单
todos = [
{"content": "读取调用说明和参考文档", "status": "pending", "activeForm": "读取调用说明和参考文档"},
{"content": "为第1周启动子智能体", "status": "pending", "activeForm": "为第1周启动子智能体"},
{"content": "为第2周启动子智能体", "status": "pending", "activeForm": "为第2周启动子智能体"},
# ... 为每个周创建一个任务
{"content": "汇总所有结果并清理临时文件", "status": "pending", "activeForm": "汇总所有结果并清理临时文件"}
]
读取参考文档:
- 需要脚本参数:读取
references/script-api-reference.md查看详细参数
工作流程:
- 读取调用说明:
{输出路径}/tmp/claude_instruction.md(标记第一个任务为 in_progress) - 并行启动子智能体:使用 Task 工具为每个周启动独立的 general-purpose 子智能体
- 📘 调用方法:参考
references/workflow.md第 2.2 节的详细示例 - 在同一个响应中调用多次 Task 工具实现并行处理
- 为每个子任务标记状态(启动时 → in_progress,完成时 → completed)
- ⚠️ 重要:子智能体必须只返回简短的成功/失败状态,不要输出详细报告
- 📘 调用方法:参考
- 汇总结果:收集所有子任务的成功/失败状态(标记为 in_progress)
- 清理临时文件:删除成功的临时文件,保留失败的用于调试(标记为 completed)
⚠️ 子智能体输出规范(重要):
- ✅ 只返回简短状态:"✅ 第X周周报生成成功" 或 "❌ 第X周周报生成失败:[原因]"
- ❌ 不要输出详细的工作内容、数据统计、术语转换示例等
- ❌ 不要输出详细的执行步骤说明
- ✅ 严格按模板输出:
- 如果提供了模板(--template参数):只输出模板格式的周报文件
完整的工作流程和 Task 工具调用示例:📘 workflow.md
参考文档
📘 workflow.md
完整的工作流程指南,包含:
- 详细的 Step 2 执行步骤
- 子智能体任务提示模板(可直接复制使用)
- 临时文件结构和清理规则
📘 examples.md
常见使用场景示例:
- 示例1:生成本月周报(Markdown格式)
- 示例2:使用Word模板
- 示例3:批量生成多周周报
- 示例4:多项目汇总
📘 script-api-reference.md
Python 脚本详细调用参数和使用示例:
parse_time.py- 时间解析analyze_template.py- 模板分析get_git_logs.py- Git日志获取(精简模式)fill_template.py- 模板填充和导出orchestrate_reports.py- 编排所有步骤
参数说明
orchestrate_reports.py 参数
--paths(必须):项目路径列表,逗号分隔--time(必须):时间表达式- 相对时间:
本周、上周、本月、上月、本年、去年 - 绝对时间:
YYYY-MM-DD或YYYY-MM-DD-YYYY-MM-DD
- 相对时间:
--output(必须):输出目录路径--template(可选):模板文件路径(支持 .md 和 .docx)--format(可选,默认 md):输出格式(md或docx)--naming(可选):周报命名规则列表,逗号分隔- 推荐使用:为每个周报指定自定义文件名
- 示例:
--naming "华电第一周周报,华电第二周周报" - 命名规则数量必须与生成的周报数量一致
- 不提供时使用默认命名:
第X周周报.docx
时间表达式示例
| 表达式 | 说明 | 生成的周报 |
|---|---|---|
本周 |
当前周的周一到周五 | 1份 |
本月 |
本月1日到最后一日(按周划分) | 4-5份 |
2025-1-1-2025-1-31 |
指定时间范围 | 按周划分 |
2025-1-15 |
指定日期所在周 | 1份 |
常见问题
Q: 临时文件保存在哪里?
A: {输出路径}/tmp/ 目录,成功后自动清理