⚔️

「日本の祝日」を取得する Claude Skill を作ってみた

に公開

最近、Anthropic が Claude Skills という新機能を発表しました。

Skills についての詳細は上記の記事などに譲りますが、ここでは「AIエージェントに、MCPサーバーよりも簡単に導入できる “固有アビリティ”」くらいの感覚で扱います。

「日本の祝日を取得するスキル」は、AI が日本の祝日を正確に扱えるようにするものです。
これは、過去記事「祝日.csv の URL はデジタル庁のデータカタログから取得しよう」で紹介した API を使用します。

以下にアップしてあるので、適宜ダウンロードしてセットアップしてください。

※単なるシェルスクリプトなので、Windows でも Git Bash などで動作すると思いますが、動作確認は Mac で行いました。


使い方

このスキルを AI エージェントに授けると、以下のような対話ができるようになります。
(対話は Claude code で行っています)


Q: 来年の祝日は?

A:

2026年の日本の祝日は以下の通りです:

日付 祝日名
2026-01-01 元日
2026-01-12 成人の日
2026-02-11 建国記念の日
2026-02-23 天皇誕生日
2026-03-20 春分の日
2026-04-29 昭和の日
2026-05-03 憲法記念日
2026-05-04 みどりの日
2026-05-05 こどもの日
2026-05-06 休日
2026-07-20 海の日
2026-08-11 山の日
2026-09-21 敬老の日
2026-09-22 休日
2026-09-23 秋分の日
2026-10-12 スポーツの日
2026-11-03 文化の日
2026-11-23 勤労感謝の日

合計 18 日の祝日があります。注目すべき点は、5月6日と9月22日が振替休日または国民の休日として追加されていることです。


ふむ、振替休日は「休日」として出力されるようです。
では次。

Q: 2020年〜2026年までの祝日を、祝日名に対する各年の日付を示した表でまとめて。「休日」は除外して。

A:

2020年〜2026年の祝日を祝日名ごとにまとめ、「休日」(振替休日)を除外した表を作成します。

祝日名 2020 2021 2022 2023 2024 2025 2026
元日 01/01 01/01 01/01 01/01 01/01 01/01 01/01
成人の日 01/13 01/11 01/10 01/09 01/08 01/13 01/12
建国記念の日 02/11 02/11 02/11 02/11 02/11 02/11 02/11
天皇誕生日 02/23 02/23 02/23 02/23 02/23 02/23 02/23
春分の日 03/20 03/20 03/21 03/21 03/20 03/20 03/20
昭和の日 04/29 04/29 04/29 04/29 04/29 04/29 04/29
憲法記念日 05/03 05/03 05/03 05/03 05/03 05/03 05/03
みどりの日 05/04 05/04 05/04 05/04 05/04 05/04 05/04
こどもの日 05/05 05/05 05/05 05/05 05/05 05/05 05/05
海の日 07/23 07/22 07/18 07/17 07/15 07/21 07/20
山の日 08/10 08/08 08/11 08/11 08/11 08/11 08/11
敬老の日 09/21 09/20 09/19 09/18 09/16 09/15 09/21
秋分の日 09/22 09/23 09/23 09/23 09/22 09/23 09/23
スポーツの日 07/24 07/23 10/10 10/09 10/14 10/13 10/12
文化の日 11/03 11/03 11/03 11/03 11/03 11/03 11/03
勤労感謝の日 11/23 11/23 11/23 11/23 11/23 11/23 11/23

注目ポイント:

  • 固定祝日:元日、建国記念の日、天皇誕生日、昭和の日、憲法記念日、みどりの日、こどもの日、文化の日、勤労感謝の日(9日)
  • ハッピーマンデー:成人の日、海の日、敬老の日、スポーツの日(4日)
  • 天文計算による変動:春分の日、秋分の日(2日)
  • 2020〜2021年特例:東京オリンピック開催に伴い、海の日・山の日・スポーツの日が7月に移動

正しく集計してくれました。年によって日付の変わる祝日も、きちんと説明されていますね。


応用

私はこのスキルを利用して、毎月会社に提出する「日報」の作成を AI に任せようとしています。

次のような依頼です。

Q:

今月の日報を出力したい。次の列を持つ表を Markdown で作って。

日付(MM/DD)|曜日|稼動|開始時刻

  • 弊社は原則、土日と祝日が非稼働日。
  • 開始時刻は、稼働日なら 9:00 固定。

A:

2025年10月の日報テーブルを作成しました:

日付(MM/DD) 曜日 稼動 開始時刻
10/01 9:00
10/02 9:00
10/03 9:00
10/04
10/05
10/06 9:00
10/07 9:00
10/08 9:00
10/09 9:00
10/10 9:00
10/11
10/12
10/13
10/14 9:00
10/15 9:00
10/16 9:00
10/17 9:00
10/18
10/19
10/20 9:00
10/21 9:00
10/22 9:00
10/23 9:00
10/24 9:00
10/25
10/26
10/27 9:00
10/28 9:00
10/29 9:00
10/30 9:00
10/31 9:00

10月の稼働日数:22日
非稼働日:9日(土日8日 + 祝日1日:10/13 スポーツの日)


イイ感じですね。

これをベースにして、

  1. 社内カレンダーから「有休を使った日」を取得するスキル
  2. 社内 Git リポジトリやグループウェアから「作業実績を取得する」スキル
  3. ①と②の結果から「稼働日ごとの稼働時間と案件ごとの作業時間を集計する」スキル

を AI エージェントに授ければ、「今月の日報を作って」という一言で、イイ感じの日報ができあがりそうです。

「日報を月末にまとめて作るんじゃない!(毎日書け)」というツッコミはお待ちしておりません。

おまけ

  • Claude Skills (Agent Skills) に対応していないAIエージェントでも、 skill.md の内容を AGENTS.md に書いておいて、 get-holidays.sh を同じ場所に置いておけば、それを「よしなに」使ってくれると思いますけどね。
  • このように、オープンデータと Claude Skills は、とても相性のよいものかなと思います。(MCPサーバーでもよいけど。REST API を呼び出して結果を返すだけなら、Fat 過ぎると感じます。)
  • このスキルの実装自体も、Claude code にやってもらったので、私自身は1行もコードを書いていません。コードレビューはしました、シェルスクリプトは詳しくないけど。

Discussion