Chinese Holiday Assistant

v1.0.2

Queries Chinese holidays, work-shift arrangements, and determines if a date is a workday based on synced iCloud data and weekly rules.

1· 260·1 current·1 all-time
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description match the code and config: the skill parses .ics files in data/, supports DTSTART/DTEND ranges, and can update the calendar by downloading from PRIMARY_URL/BACKUP_URL. The listed URLs in config.json (iCloud public holidays and a GitHub raw file) are consistent with the stated purpose.
Instruction Scope
Runtime instructions and scripts only read config.json and .ics files under data/ and optionally perform HTTP GET to configured URLs then write the downloaded calendar to data/cn_zh.ics. SKILL.md mentions a cron monthly update (no cron job provided) and claims upward-tracing of config.json; the code uses a fixed path (BASE_DIR/config.json) rather than walking upward, so the documentation slightly overstates behavior. Be aware the download step fetches remote content and writes it to disk.
Install Mechanism
This is an instruction-only skill with no install spec. It requires Python packages (requests, icalendar) noted in the README — reasonable and proportionate for the task. No arbitrary or opaque external installers are used.
Credentials
The skill requests no environment variables or credentials. config.json contains only URL strings for data sources. This is proportional. Caution: if you or a third party edits PRIMARY_URL/BACKUP_URL to point at an attacker-controlled host, the skill will download and write whatever content is served, so treat those URLs as trust-sensitive.
Persistence & Privilege
The skill does not request permanent inclusion (always:false), does not modify other skills or system-wide settings, and has no special privileges. It only writes a single calendar file under its data/ directory.
Assessment
This skill is coherent and low-risk but follows a few simple rules before you run it: - Inspect config.json to confirm PRIMARY_URL and BACKUP_URL are trusted sources (the default PRIMARY_URL is an iCloud public holidays feed; the backup is GitHub raw). Replace only with URLs you trust. - Running download_ics.py will perform HTTP GET(s) and overwrite data/cn_zh.ics — check the downloaded content if you need to guard against unexpected calendar entries. - Dependencies: install requests and icalendar in a controlled Python environment. - SKILL.md mentions automatic cron updates but doesn't provide a cron job; if you set a cron yourself, consider network restrictions. - The SKILL.md statement about upward-tracing for config.json is inconsistent with the code (it uses a fixed path), so verify config placement if you move the folder. If you accept those caveats (trusted URLs and the script's write behavior), the skill appears to be what it claims.

Like a lobster shell, security has layers — review code before you run it.

latestvk974b8vgtkm3jpm137dmhxec7583xn0t
260downloads
1stars
3versions
Updated 2w ago
v1.0.2
MIT-0

中国节假日助手 (cn-holiday-checker) / Chinese Holiday Assistant (cn-holiday-checker)

该技能用于查询中国节假日、调休安排及工作日判定。 This skill is used for querying Chinese holidays, work-shift arrangements, and workday determination.

功能说明 / Functionality

  • 节假日识别 / Holiday Recognition:支持多文件数据源,自动合并解析 data/ 目录下的所有 .ics 文件。 / Supports multi-file data sources; automatically merges and parses all .ics files in the data/ directory.
  • 跨日事件处理 / Cross-day Event Processing:支持处理具有 DTSTARTDTEND 的持续性事件,不再仅限于单日标记。 / Supports processing continuous events with DTSTART and DTEND, no longer limited to single-day markers.
  • 自动判定 / Automatic Determination:优先匹配节假日/调休事件;若无匹配,则根据自然周(周一至周五工作日,周六至周日休息日)进行判定。 / Prioritizes matching holiday/work-shift events; if no match, determines based on the natural week (Mon-Fri as workday, Sat-Sun as rest day).
  • 自动更新 / Automatic Update:通过 cron 定时任务每月自动拉取最新日历数据。 / Automatically pulls the latest calendar data monthly via cron.

环境要求 / Requirements

  • Python 3.x
  • 已安装依赖 / Installed dependencies: requests, icalendar

使用方法 / Usage

1. 查询指定日期 / Query a specific date

支持通过 --date 参数传入日期(格式为 YYYY-MM-DD),若不传入则默认使用当天日期: Supports querying a specific date via the --date parameter (format: YYYY-MM-DD); defaults to today if not provided:

python3 cn-holiday-checker/scripts/holiday_checker.py --date "2026-03-19"

2. 手动更新数据 / Manual Data Update

如果需要立即更新节假日数据,请运行: If you need to update holiday data immediately, please run:

python3 cn-holiday-checker/scripts/download_ics.py

配置说明 (config.json) / Configuration (config.json)

  • 存放技能相关的环境变量。 / Stores environment variables related to the skill.
  • 支持 PRIMARY_URL (主数据源) 与 BACKUP_URL (备用数据源)。 / Supports PRIMARY_URL and BACKUP_URL (backup data source).
  • 脚本会自动向上回溯识别 config.json 文件,确保迁移目录后配置依然有效。 / The script automatically traces upward to identify the config.json file, ensuring configuration remains valid after migrating the directory.

Comments

Loading comments...