無人ジョブの点検スキル(unattended-job-audit)
定期実行のジョブ(launchd・cron・GitHub Actions)を棚卸しして、失敗が人に届くか・二度打ちしないか・出力が古くなったら気づけるかを点検する Claude Code のスキルです。スクリプトは Python の標準ライブラリだけで動き、ジョブの登録・解除・書き換えはしません(読むだけです)。
ダウンロード: unattended-job-audit.zip(版 1.0.1・約 15 KB・MIT ライセンス)
2026-09-29 までは GitHub のリポジトリで配っていました。中身は同じで、配布の場所をこのページに移しました。
入れ方
curl -LO https://houchi-unyo.com/assets/dl/unattended-job-audit.zip
unzip unattended-job-audit.zip -d ~/.claude/skills/
~/.claude/skills/unattended-job-audit/ にスキルが入ります。Claude Code に「無人ジョブの点検をして」と頼むと読み込まれます。プロジェクト単位で使うなら <リポジトリ>/.claude/skills/ の下に展開してください。
展開したフォルダはプラグインのマーケットプレイスの形にもなっています。
/plugin marketplace add ~/.claude/skills/unattended-job-audit
/plugin install unattended-job-audit@unattended-job-audit
スキャナだけを使うこともできます。
python3 ~/.claude/skills/unattended-job-audit/scripts/scan_jobs.py --repo ~/src/myapp
python3 ~/.claude/skills/unattended-job-audit/scripts/scan_jobs.py --json
何を見るか
| # | 問い |
|---|---|
| 1 | 失敗したとき、人に届くか |
| 2 | 成功したときは黙っているか |
| 3 | 同じ仕事を二度しないか |
| 4 | 出力が古くなったら気づけるか |
| 5 | 登録されている一覧と、あるべき一覧が一致するか |
| 6 | 秘密が環境変数・権限 600 のファイルにあるか |
| 7 | 失敗したときに止まるか、暴走するか |
| 8 | 自動でできなかった分を、人が拾える形で残すか |
| 9 | ログが残り、いつのものか分かるか |
| 10 | 端末が寝ていたときの前提が書いてあるか |
1〜3・6・7・9 はスクリプトが当たります。4・5・8・10 は人が見ます。各項目の中身と、実際に起きた壊れ方は zip の中の reference/checklist.md にあります。
断っておくこと
- 判定は文字列の手がかりによるものです。当たらないこともあります(通知を別の仕組みに任せている、など)。引っかかった行を見て、人が決めてください
- macOS では
launchctl list、Linux ではcrontab -lを読みます。どちらも読み取りだけです - コードは生成 AI に書かせました。点検の項目は、このブログの記録の仕組みで実際に踏んだ失敗から書き起こしています
作った経緯と、自分の環境に当てた結果は Zenn の記事「自分の定期ジョブ28本を点検するスキルを作ったら、自分のバックアップが壊れていた」に書きました。