毎週土曜日に自動的にSlack情報を取得し、前週(月〜金)の振り返り記事下書きを生成するシステムです。
weekly-retrospective/
├── README.md # このファイル
├── weekly-retrospective.sh # メインスクリプト
├── retrospective-prompt.md # Claude Code用プロンプト
└── weekly-retrospective.log # 実行ログ(実行時に生成)
claude
コマンドが使用可能)cd /Users/n.niikura/Documents/app/naoqoo2.github.io
./scripts/weekly-retrospective/weekly-retrospective.sh
crontab -e
# 週報自動生成 - 毎週土曜日 20:00に実行
0 20 * * 6 /Users/n.niikura/Documents/app/naoqoo2.github.io/scripts/weekly-retrospective/weekly-retrospective.sh
# より詳細なログ出力が必要な場合
0 20 * * 6 /Users/n.niikura/Documents/app/naoqoo2.github.io/scripts/weekly-retrospective/weekly-retrospective.sh >> /Users/n.niikura/Documents/app/naoqoo2.github.io/scripts/weekly-retrospective/cron.log 2>&1
crontab -l
0 20 * * 6
: 毎週土曜日の20:00(午後8時)0 9 * * 6
: 毎週土曜日 9:0030 21 * * 6
: 毎週土曜日 21:300 8 * * 0
: 毎週日曜日 8:00_posts/retrospective/YYYY-MM-DD-YYYYMMDD.md
scripts/weekly-retrospective/weekly-retrospective.log
retrospective-prompt.md
の「対象チャンネル」セクションを編集
retrospective-prompt.md
内の記事要件や構造を編集
crontabのスケジュール部分を編集
# Claude Codeのパスを確認
which claude
# フルパスを指定する場合
/opt/homebrew/bin/claude < prompt.md
chmod +x /Users/n.niikura/Documents/app/naoqoo2.github.io/scripts/weekly-retrospective/weekly-retrospective.sh
cronは最小限の環境変数のみ読み込むため、必要に応じてスクリプト内でPATHを設定
# 実行ログを確認
tail -f /Users/n.niikura/Documents/app/naoqoo2.github.io/scripts/weekly-retrospective/weekly-retrospective.log
# cronログを確認(設定した場合)
tail -f /Users/n.niikura/Documents/app/naoqoo2.github.io/scripts/weekly-retrospective/cron.log
成功時にmacOSの通知が表示されます。表示されない場合はターミナルの通知許可を確認してください。
cron実行を停止したい場合:
crontab -e
# 該当行をコメントアウト(行頭に#を追加)または削除
もっとプロンプトシンプルにした版。上記はmdとshでフォーマットの記述重複してて微妙。とはいえsh側消すとアウトプットがいまいちになる。
generate-weekly-report.sh