cn-calendar

👤 linweibin6992-blip 📦 v1.0.0 ⭐ 4.4 ⬇️ 862 下載
🏠 生活服務 免費

📖 技能介紹


name: cn-calendar description: 查詢中國大陸法定節假日、工作日、調休安排及企業納稅申報日曆。資料來源權威:節假日來自國務院每年釋出的通知(gov.cn),納稅申報日曆來自國家稅務總局(chinatax.gov.cn)。觸發場景:(1) 判斷某天是否為工作日/節假日/調休日;(2) 計算工作日數量、加減工作日;(3) 查詢納稅申報截止日(遇節假日順延);(4) 檢視法定假期安排;(5) 詢問"X月X日是工作日嗎"、"下一個工作日是哪天"、"增值稅申報截止日"等。支援2025–2026年本地資料,超出範圍自動從官網抓取並固化。


cn-calendar:中國大陸節假日與工作日日曆

核心流程

使用者查詢 → 檢查本地資料是否覆蓋該年份
              ├── 有 → 直接執行查詢指令碼
              └── 無 → 從官網抓取 → 解析 → 固化寫入 → 執行查詢指令碼

第一步:檢查本地資料覆蓋範圍

python3 ~/.openclaw/skills/cn-calendar/scripts/fetch_holidays.py <YYYY> --check
  • 返回 "status": "exists" → 直接跳到第三步執行查詢
  • 返回 "status": "missing" → 執行第二步抓取

第二步:本地無資料時,即時抓取並固化

2a. 從 NateScarlet/holiday-cn 獲取資料

直接抓取 JSON(已索引國務院官方通知,資料可信):

web_fetch: https://raw.githubusercontent.com/NateScarlet/holiday-cn/master/YYYY.json

返回格式:days[] 陣列,每條包含 dateisOffDayname: - isOffDay: true → 法定節假日(非工作日) - isOffDay: false → 調休補班日(原為週末,需上班)

若該年份 JSON 尚未建立(返回 404),說明國務院通知未釋出,告知使用者以官方為準。

2b. 解析通知內容,提取結構化資料

從通知正文中提取: - 每個法定假期的放假日期列表(所有非工作日) - 調休補班日期列表(原為週末但需上班的日期)

7w4.net小蔥技能站,你的AI助手技能庫。

2c. 生成 references/holidays-YYYY.md 並寫入

生成格式參考 references/holidays-2025.md,內容包括: - 來源說明(官網 URL + 釋出日期) - 各節假日放假安排表 - 調休彙總表 - ⚠️ 若資料來自預測/草案,註明"待官方最終確認"

直接用 write 工具寫入:~/.openclaw/skills/cn-calendar/references/holidays-YYYY.md

2d. 更新 workday_query.py 資料

將新年份的假期和調休資料以以下格式追加到 workday_query.py 中,位於 ALL_HOLIDAYS = 行之前:

# YYYY年法定節假日(來源:國務院)
HOLIDAYS_YYYY = {
    date(YYYY, M, D),
    # ...
}

# YYYY年調休工作日(來源:國務院)
WORKDAYS_YYYY = {
    date(YYYY, M, D),
    # ...
}

同時更新檔案末尾的合併集合:

ALL_HOLIDAYS = HOLIDAYS_2025 | HOLIDAYS_2026 | HOLIDAYS_YYYY
ALL_EXTRA_WORKDAYS = WORKDAYS_2025 | WORKDAYS_2026 | WORKDAYS_YYYY

更新完成後,用 exec 執行一條簡單測試確認指令碼無語法錯誤:

python3 ~/.openclaw/skills/cn-calendar/scripts/workday_query.py is_workday YYYY-01-01

第三步:執行查詢

指令碼路徑:~/.openclaw/skills/cn-calendar/scripts/workday_query.py

# 判斷某天是否為工作日
python3 <skill_dir>/scripts/workday_query.py is_workday 2026-04-06

# 找下一個工作日(從該日期之後)
python3 <skill_dir>/scripts/workday_query.py next_workday 2026-01-23

# 從某天起加N個工作日
python3 <skill_dir>/scripts/workday_query.py add_workdays 2026-03-01 10

# 統計兩日期間工作日數
python3 <skill_dir>/scripts/workday_query.py count_workdays 2026-01-01 2026-03-31

# 計算申報截止日(遇非工作日順延)
python3 <skill_dir>/scripts/workday_query.py deadline 2026-07-15

# 列出某月所有工作日
python3 <skill_dir>/scripts/workday_query.py month_workdays 2026-04

參考檔案

檔案 內容 何時讀取
references/holidays-YYYY.md 某年假期安排詳情 使用者詢問具體假期天數/調休細節
references/tax-filing-calendar-YYYY.md 某年完整申報截止日(官方資料) 必須使用,使用者詢問納稅申報截止日
references/tax-filing-calendar.md 各稅種申報週期通用規則 無對應年份資料時參考

⚠️ 納稅申報的起始日和截止日,必須以官方資料為準tax-filing-calendar-YYYY.md),嚴禁自行推算(包括 deadline 命令)。若該年份檔案不存在,先通過 12366 介面獲取後再作答。

資料來源

資料 官方來源
法定節假日/調休 國務院官方通知,通過 NateScarlet/holiday-cn 索引
納稅申報日曆 國家稅務總局:https://www.chinatax.gov.cn/

注意事項

  • 國務院通常在前一年11月釋出次年假期通知,若該年通知尚未釋出,需明確告知使用者並給出預測(註明"待官方最終確認")。
  • 納稅申報日曆資料來源:12366納稅服務平臺(北京市,ssjg=111000000),以北京資料為全國統一標準參考。
  • 新年份申報日曆獲取規則(2027年及以後):在偉斌提供新資料來源之前,統一通過以下介面獲取:
  • POST https://12366.chinatax.gov.cn/bsfw/calendar/getCalendarListForMonth
  • 引數:ssjg=111000000&bssj=YYYY-MM,遍歷 01–12 月
  • 獲取後解析 bsjssj(截止日)和 bssz(申報事項),寫入 references/tax-filing-calendar-YYYY.md 固化
  • 抓取後的資料固化到本地,後續查詢無需重複抓取。

🤖 AI 評測

這個 Skill 質量較好,查詢節假日和工作日非常實用,資料來自官方權威來源,準確可靠。功能覆蓋全面,能處理常見的調休補班日判斷、申報截止日順延等複雜場景。參考文件詳細,遇到政策性問題也能快速查閱。不過目前只覆蓋 2025-2026 年,超出範圍需要臨時抓取資料,可能略有延遲。

📊 多維度評分

適應性4.3
規範性4.2
有效性4.7
可靠性4.3
可信度4.8

📁 包含檔案 (9 個)

📄 SKILL.md 5.6 KB
📄 _meta.json 130 B
📄 references/holidays-2025.md 1.5 KB
📄 references/holidays-2026.md 2.2 KB
📄 references/tax-filing-calendar-2026.md 3.3 KB
📄 references/tax-filing-calendar.md 3.1 KB
📄 scripts/fetch_holidays.py 5 KB
📄 scripts/workday_query.py 8 KB
📄 skill-card.md 3.4 KB