skill-audit-reminderlisted
Install: claude install-skill ttamakijp/dev-templates
> Dispatch / scheduled-tasks MCP に登録する際は、上記
> `schedule.cronExpression` をそのまま `cronExpression` パラメータに
> 渡す。導入手順は同ディレクトリ [`README.md`](../README.md) を参照。
> GitHub Actions 経由の月次実行は
> `.github/workflows/skill-audit-reminder.yml` を参照。
# skill-audit-reminder
## Overview
ADR-0036 (Skill backend neutrality) の運用裏付け。skill 群を毎月 1 日
00:00 UTC (= 09:00 JST) に走査し、`SKILL.md` frontmatter の
`last_audit_date` (ISO-8601, YYYY-MM-DD) が今日から `threshold` ヶ月
(default: 6) 以上前の skill を **stale** として検出する。
stale が見つかった場合、各 skill につき 1 つ `skill-audit` ラベル付き
GitHub Issue を起票する。同タイトルの Open Issue が既に存在する場合は
重複起票しない。`last_audit_date` 未設定の skill は **warn** 扱い
(stale には含めず、検出スクリプトの `missing` フィールドに列挙される)。
## Keywords
skill, audit, last_audit_date, backend-neutrality, ADR-0036, cadence,
maintenance, scheduled-task, LLM SDK
## 実行手順
### Step 1: stale skill 抽出
```bash
python scripts/check-skill-audit-staleness.py --format=json > /tmp/skill-audit.json
```
検出ロジック (擬似コード):
```python
import datetime as dt, yaml
from pathlib import Path
today = dt.date.today()
# threshold=6 → cutoff = today から暦上 6 ヶ月前 (day overflow は月末に丸め)
cutoff = months_ago(today, 6)
for skill_md in (Path("source/skills").rglob("SKILL.md")
| Path("templates/skills").rglob("SKILL.md")
| Path("skills").rglob("SKILL.md")
| Path("claude-bootstrap/skills").rglob("SKILL.md")
| Path("scheduled-tasks").rglob("SKILL.md")):
fm = yaml.safe_load(read_frontmatter(skill_md))
raw = fm.get