workday-calendar
智能周历系统。支持法定假日、补班日、轮休系统(跳过/不跳过法定假双模式)、特殊休息(公休/临修)、个人日程管理。
Rank
62
Safety
84
Downloads
1.7k
Updated
Oct 10, 2026
Version
2.2.0
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1.7K downloads reported by the source. Last updated 10/10/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 10, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 10, 2026
- Adoption signal
- 1.7K downloadsadoption · observed Oct 10, 2026
- Latest release
- 2.2.0release · observed Jun 25, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s1794v2r46s8y5d1r4jdd7ec5h84rw70:workday-calendar- Install using `clawhub skill install s1794v2r46s8y5d1r4jdd7ec5h84rw70:workday-calendar` in an isolated environment before connecting it to live workloads.
- No published capability contract is available yet, so validate auth and request/response behavior manually.
- Review the upstream CLAWHUB listing at https://clawhub.ai/ldxs001/workday-calendar before using production credentials.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-ldxs001-workday-calendar/snapshot"
Documentation
CLAWHUB
149,681 characters of source documentation, loaded on request.
Extracted files
5 files captured from the source.
SKILL.md
---
name: workday-calendar
author: wUwproject
license: MIT
tags: ['calendar', 'workday', 'holiday', 'schedule', 'rotation', 'gongxiu', 'linxiu', 'excel-export']
version: 2.2.0
description: 智能周历系统。支持法定假日、补班日、轮休系统(跳过/不跳过法定假双模式)、特殊休息(公休/临修)、个人日程管理。
sensitive_access: false
critical_write: false
permission_weight: LOW
data_dir: ../.standardization/workday-calendar/data/
trigger: 法定假日|周历|工作日|调休|补班|节假日|假日区间|年度工日|日程|安排|空闲时间|轮休|公休|临修|排班
trigger_negative: true
external_data_dir: true
h1_position: true
meta_field_sync: true
create_permissions_md: true
---
# 智能周历系统 (Workday Calendar)
## 触发条件
**正向触发:**
- 查询或管理**法定假日**、**补班日**、**调休**安排
- 计算**年度工作日**、**工作日统计**
- 生成**周历**、**日程安排**
- 查询某天的**空闲时间**、**日程安排**
- 添加、更新、删除**日程事件**
- 说出关键词:"周历"、"工作日"、"假日区间"、"日程"、"安排"
- 用户讨论日历 UI 组件设计(如"帮我画一个日历组件"),应触发 drawiodo 而非本技能
- 用户要求操作其他日历应用(如 Google Calendar、Outlook 日历),本技能仅管理本地数据
### 否定条件(不触发)
- 用户只是询问日期(如"今天几号"),无假日/工作日/日程管理意图
- 用户讨论日历 UI 组件设计(如"帮我画一个日历组件"),应触发 drawiodo 而非本技能
- 用户要求操作其他日历应用(如 Google Calendar、Outlook 日历),本技能仅管理本地数据
## 核心能力
> 📚 **渐进式加载**:本技能采用渐进式 MD 体系,`SKILL.md` 为入口(≤230行),详细内容拆分到 `references/*.md` 按需加载。
| 能力 | 说明 |
| ------ |------|
| **法定假日管理** | 区间形式存储节假日,支持 AI 批量导入 |
| **补班日管理** | 单独记录调休上班日期 |
| **周末规则可配置** | 双休/单休/单双休/自定义周几 |
| **工作日计算** | 自动计算年度总工日,含所有休息类型统计 |
| **轮休系统** | skip/add 双模式,可配置周期,跨年缓存 |
| **特殊休息** | 公休/临修,支持单日和区间,最高优先级 |
| **个人日程** | 添加/删除/更新/查询/冲突检测 |
| **排班时段** | 15 分钟粒度,支持岗位+人员多赋值 |
| **HTML 导出** | 排班周历 / 日程周历 / 排班表(周/月/日期范围) |
| **定时任务** | 自动化配置,Markdown 输出 |
| **配置中心** | Web 界面(settings.py,端口 8765) |
### 渐进式文件索引
| 文件名 | 分类 | 包含内容 | 审计关联 |
| -------- |------| ---------- |----------|
| `references/LICENSE.md` | 许可协议 | MIT 许可证完整文本 | R-26 |
| `references/antipatterns.md` | 规范指南 | 常见反模式与避坑指引 | R-18 |
| `references/changelog.md` | 版本管理 | 版本更新日志 | R-24 |
| `references/cli.md` | 命令参考 | CLI 命令完整列表 | 无 |
| `references/data_format.md` | 参考文档 | JSON 数据格式说明 | 无 |
| `references/examples.md` | 使用示例 | 各场景完整交互示例 | R-25 C-17 |
| `references/faq.md` | 常见问题 | 常见疑问与解答 | R-19, R-25 C-19 |
| `references/guide.md` | 使用指南 | Python API 使用示例 | 无 |
| `references/permissions.md` | 权限与测试 | 权限扫描说明与测试结论 | R-15, R-16 |
| `references/test-report.md` | 测试报告 | skill-function-test 测试结论 | 无 |
## 工作流程
### 首次使用 / 新年份
当某年没有法定假日数据时(`load_holiday_intervals(year)` 返回空列表),**必须主动联网查询**国务院办公厅放假安排通知:
1. **联网查询** — 输入:年份 → 搜索"国务院办公厅 20XX年 放假安排" → 输出:法定假日日期范围、补班日、假期名称
2. **组织规则模板 JSON** — 输入:查询结果 → 按 `export_rules_template` 格式组织 JSON → 输出:标准规则模板
3. **导入** — 输入:规则模板 → 调用 `import_rules_from_template()` → 输出:数据写入 JSON 文件
4. **核对** — 输入:已导入数据 → 运行 `python scripts/workday_calendar.py rules 20XX` → 输出:规则确认表
5. **计算** — 输入:确认无误的数据 → 调用 `calculate_total_workdays(20XX)` → 输出:年度工日统计
**联网查询要求:**
- 搜索关键词:"国务院办公厅 20XX 年 放假安排"
- 获取:法定假日日期范围、调休上班日(补班)、假期名称
- 确认该年周末规则(通常为标准双休日六日)
**组织规则模板(`export_rules_template` 格式):**
```json
{
"version": "1.0",
"year": 2027,
"base_type": "holiday",
"rules_meta.json
{
"ownerId": "kn75zfd51df61ajdyqtgvrs1hx84s4q6",
"slug": "workday-calendar",
"version": "2.2.0",
"publishedAt": 1782383200854
}references/antipatterns.md
# workday-calendar 反模式 > 本文件以渐进式加载方式提供,详见 `references/antipatterns.md` ## 反模式 1:在 SKILL.md 正文中写完整数据格式说明 **错误做法**:把 `holiday_intervals.json` 和 `schedule_events.json` 的完整字段说明全部写在 SKILL.md 里,导致文件超过 230 行,违反 R-17 规则。 **正确做法**:数据格式说明拆分到 `references/data_format.md`,SKILL.md 只留摘要 + 引用链接。当 SKILL.md 超过 150 行时应主动考虑拆分。 ## 反模式 2:触发词过于宽泛导致误触发 **错误做法**:trigger 写成 `日历|calendar`,导致用户说「帮我画一个日历 UI」时也触发本技能,而用户实际想要的是 drawio-diagram 画图。 **正确做法**:触发词须含具体动作或对象(如 `法定假日|工作日|周历|日程管理`),并配合 `trigger_negative: true` 在「不触发」段落排除 UI 设计类意图。 ## 反模式 3:直接编辑 data/ 下的 JSON 文件而不备份 **错误做法**:手动用编辑器打开 `data/schedule_events.json` 更新日程,改错后无法恢复,也没有利用系统自带的 .bat 容灾备份机制。 **正确做法**:始终通过 `python scripts/workday_calendar.py add/delete/update` 操作,脚本会自动创建 `.bat` 容灾备份。紧急恢复时双击 `data/backups/schedule_backup_XX.bat` 即可回滚。
references/changelog.md
## 2.2.0 (2026-06-22) ### Added - B 层排班时段规则系统(WorkSlot 15 分钟粒度) - 岗位(position)+ 多人多岗多赋值(WorkSlot.assignments) - 排班时段条(tl-bar,工作日蓝灰交替/周末全灰/假日隐藏) - 弹出框排班时段表 + 个人日程按 B 层时段染色 - 排班表导出(export_schedule_table,周/月/日期范围,按周或月分组) - 日程自动状态流转(pending → missed/completed,配置开关) - 平台无关的自动化定时配置(auto add/check CLI) - 补班日弹出框按工作日时段展示 ### Changed - 周末色统一为绿色(法定假休),不再与轮休双色区分 - 日类型简化为:绿=休息(法定/双休/轮休/公休/临修)、红=补班、白=工作 - get_day_type() 逻辑重构:排班规则只定义上班,不上班=休息 - config.json 缺字段自动补默认值(不再因旧文件无 key 而失效) ### Fixed - load_config() 新增字段自动合并默认值 - auto_update_event_statuses() 支持 missed→completed 重评 - get_slot_color_for_time() 按 weekday+time 正确映射时段颜色 - weekend_config 映射 bug(config 0=周日→Python 6=周日) - 弹出框日程染色正确(午休灰、上午班蓝、下午班蓝) ## 2.1.0 (2026-06-22) ### Added - 基础周 HTML 导出与配置中心(settings.py) - 岗位+人员多赋值支持(WorkSlot.assignments) - 排班表导出(周/月/日期范围) - 定时任务自动化配置(auto CLI) - 过期日程自动打标(missed/completed 配置切换) - 排班时段条(tl-bar 可视化) - 配置中心 Web 界面 ### Fixed - `update_schedule_event()` 增加冲突检测 - `export_rules_table()` 修复硬编码 52 周 - 节假日落在周末重复扣除 Bug - 周末规则转换 Bug(config_weekends_to_python) - `scheduling_rules.json` 清空后默认回退 ### Changed - WorkSlot 重构:assignments 列表替代单 position/persons - 加载配置使用默认值合并(兼容旧 config.json) ## 1.6.5 (2026-05-31) ### 修复 - **data_dir 格式修正**: frontmatter 的 data_dir 恢复为 ../ 相对路径格式(此前错误同步为 skills/ 格式) --- ## 1.6.4 (2026-05-31) ### 修复 - audit --fix 自动修正: meta_field_sync --- ## 1.6.3 (2026-05-31) ### 修复 - **H1 位置修复**: 将 H1 从第 38 行移至 frontmatter 后首行(原距 frontmatter 闭合后有 22 行空白) --- ## 1.6.2 (2026-05-31) ### 修复 - **R-04**: description 删除版本号 - **R-10**: changelog 版本号去 v 前缀 --- ## 1.6.1 (2026-05-30) ### 修复 - audit --fix 自动修正 --- ## 1.6.0(2026-05-30) ### 修复 - R-12 数据目录路径合规修复(`scripts/workday_calendar.py` 新增 `DEFAULT_DATA_DIR_RAW` 审计锚点 + `_data_dir_abs` 运行时路径) - `_meta.json` 补充 `data_dir` 字段(与 SKILL.md frontmatter 保持一致) - `get_skill_data_dir()` 改用 `_data_dir_abs` 静态路径替代动态目录遍历 ### 更新 - SKILL.md frontmatter 版本号升至 v1.6.0,描述更新 - `_meta.json` 版本号和描述同步更新 - `references/changelog.md` 补写 v1.6.0 改动记录 --- ## 1.5.0(2026-05-27) ### 修复 - 经 skill-standardization 改造,文件结构规范化(scripts/、references/ 归位) - R-11 产出物路径合规性修复(删除根目录违规文件) - R-12 数据目录路径统一(data_dir: ../.standardization/workday-calendar/data/) - SKILL.md frontmatter 补充 trigger/trigger_negative 字段 ### 更新 - SKILL.md frontmatter 版本号升至 v1.5.0 - _meta.json 版本号和描述更新 - references/changelog.md 补写 v1.4.0 遗漏的实际改动 --- ## 1.4.0(2026-05-27) ### 修复 - 经 skill-standardization 改造,文件结构规范化(scripts/、references/ 归位) - R-11 产出物路径合规性修复(删除根目录违规文件) - R-12 数据目录路径统一(data_dir: ../.standardization/workday-calendar/data/) ### 更新 - SKILL.md frontmatter 版本号升至 v1.4.0 - _meta.json 版本号和描述更新 --- ## 1.3.0(2026-05-27) ### 新增 - 国家法定假日区间管理 - 年度工作日计算 - 周历生成 - 日程管理 ---
references/cli.md
# CLI 命令参考 ```bash # 规则确认(重要!初始化后必须执行,核对配置是否正确) python scripts/workday_calendar.py rules 2026 # 导出规则确认表 # 工作日计算 python scripts/workday_calendar.py calculate 2026 # 计算年度工日 python scripts/workday_calendar.py calendar 2026 # 生成周历JSON python scripts/workday_calendar.py sync 2026 2025 # 同步数据 # 轮休管理 python scripts/workday_calendar.py rotation add "A组" 2026-01-05 7 5 --skip python scripts/workday_calendar.py rotation list python scripts/workday_calendar.py rotation delete <id> python scripts/workday_calendar.py rotation generate 2026 # 特殊休息管理(公休/临修) python scripts/workday_calendar.py special add 公休 --date=2026-03-15 --reason="公司统一调休" python scripts/workday_calendar.py special add 临修 --start-date=2026-04-10 --end-date=2026-04-12 python scripts/workday_calendar.py special list python scripts/workday_calendar.py special delete <id> # 排班时段规则 python scripts/workday_calendar.py sched view python scripts/workday_calendar.py sched set 0 08:30-11:30:上午班|收银台:张三,李四 13:30-17:30:下午班 # 配置管理 python scripts/workday_calendar.py config python scripts/workday_calendar.py config set --use-scheduling=true python scripts/workday_calendar.py config set --auto-complete=true # 规则模板(标准化 JSON 接口) python scripts/workday_calendar.py export-rules-template python scripts/workday_calendar.py import-rules '<json>' # 日程管理 python scripts/workday_calendar.py add 2026-05-20 09:00 10:00 "晨会" python scripts/workday_calendar.py list 2026-05-20 python scripts/workday_calendar.py free 2026-05-20 09:00 18:00 python scripts/workday_calendar.py delete <event_id> python scripts/workday_calendar.py update <event_id> --status=completed python scripts/workday_calendar.py schedule 7 python scripts/workday_calendar.py today # HTML 导出 python scripts/workday_calendar.py export-weekly-board [year] python scripts/workday_calendar.py export-schedule-weekly [year] python scripts/workday_calendar.py export-schedule-table --mode=week|month --date-from=... --date-to=... # 定时任务自动化 python scripts/workday_calendar.py auto add "晨间简报" 6 0 3 python scripts/workday_calendar.py auto list python scripts/workday_calendar.py auto check # 配置中心(Web 界面) python scripts/settings.py [port] # 默认 8765 ``` ### ⚙️ 配置中心 运行 `python scripts/settings.py 8765` 后在浏览器打开 `http://localhost:8765`,支持: - **基础周类型切换** - 节假周 / 排班周 - **过期日程自动打标** - 已完成 / 已错过 - **导出规则模板** / **导入规则** - **导出排班HTML** / **导出日程HTML** / **导出排班表** - 排班表支持周/月单选 + 日期范围筛选
AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/ldxs001/skills/workday-calendar",
"sourceUrl": "https://clawhub.ai/ldxs001/skills/workday-calendar",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-10T04:54:57.839Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-ldxs001-workday-calendar/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-ldxs001-workday-calendar/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-10T04:54:57.839Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1.7K downloads",
"href": "https://clawhub.ai/ldxs001/workday-calendar",
"sourceUrl": "https://clawhub.ai/ldxs001/workday-calendar",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-10T04:54:57.839Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "2.2.0",
"href": "https://clawhub.ai/ldxs001/workday-calendar",
"sourceUrl": "https://clawhub.ai/ldxs001/workday-calendar",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-06-25T10:26:40.854Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-ldxs001-workday-calendar/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-ldxs001-workday-calendar/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 2.2.0",
"description": "**workday-calendar 2.2.0** — 大版本升级,全面支持轮休(班表)与特殊休息,增强排班配置与数据分层。 - 新增“轮休系统”,可设置轮班周期,支持“跳过/不跳过”法定假日模式。 - 支持“公休/临修”特殊休息类型,优先级高于普通假期、补班、排班。 - 增强多层数据架构(法定假期、周末规则、轮休/特殊休息、个人日程独立层),日历类型优先级体系更清晰。 - 引入`settings.py`,提供本地 Web 配置中心(端口 8765)。 - CLI、数据格式、权限与文档标准化,对应 MD 文档重组与细化,权限说明单独拆分为 references/permissions.md。 - 移除旧 permission.md/skill-card.md,新增使用示例、CLI、权限、测试",
"href": "https://clawhub.ai/ldxs001/workday-calendar",
"sourceUrl": "https://clawhub.ai/ldxs001/workday-calendar",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-06-25T10:26:40.854Z",
"isPublic": true
}
]
}Record generated Oct 10, 2026.
