启用该技能,可以在WorkBuddy对话页的右边栏添加一个日历,提供月历视图、日程增删改查、分类标签(开庭/会议/截止日期/个人/研究/其他),支持从对话中提取事件并自动同步到日历。当用户提到"日历""日程""打开日历""添加日程""我的日程""calendar""安排"或询问已记录的日程信息时使用。
WorkBuddy 侧边栏日历是一项面向实际任务的技能,主要用于Overview;本技能提供一个可视化日历应用,可在 WorkBuddy 侧边栏「预览」标签页中运行;
当用户说「日历」「打开日历」或类似短语时,执行:;检查当前工作区是否已有 calendar。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
本技能提供一个可视化日历应用,可在 WorkBuddy 侧边栏「预览」标签页中运行。支持月历视图、事件的增删改查、颜色分类标签,以及从对话中自动同步日程事件。数据通过 localStorage 持久化,纯本地运行,无需网络。
当用户说「日历」「打开日历」或类似短语时,执行:
calendar.html 文件assets/calendar.html 复制到工作区根目录preview_url 打开该文件(使用绝对文件路径,无需 HTTP 服务器)重要提示: 打开日历时,用 preview_url 传入文件的绝对路径即可,不要在回复中展示 file:// 开头的完整路径。只需简洁告知「日历已打开,可在侧边栏查看」。
当用户在对话中口述日程(如「6月20日开庭」「下周三提醒交代理词」)或上传传票/通知书等文件时:
calendar.html,找到 标签{
"id": "chat_NNN",
"title": "事件标题",
"date": "YYYY-MM-DD",
"time": "HH:MM",
"desc": "详细描述",
"color": "#ef4444",
"source": "chat"
}
calendar-events.json 保持一致(如有该文件)颜色分类映射:
| 类型 | 颜色 | 色值 |
|---|---|---|
| 开庭/诉讼/仲裁 | 红色 | #ef4444 |
| 会议/会面/出差 | 蓝色 | #3b82f6 |
| 截止日期/到期 | 橙色 | #f59e0b |
| 个人/生活 | 绿色 | #10b981 |
| 研究/写作/学习 | 紫色 | #8b5cf6 |
| 其他/默认 | 灰色 | #6b7280 |
当用户在对话中要求修改某个日程(如「把6月20日的开庭改成6月21日」「修改chat_002的时间为10:00」「把开庭颜色改成蓝色」)时:
calendar.html,找到 标签匹配规则:
id(如 chat_002)精确匹配title + date 模糊匹配(取第一个匹配项)当用户在对话中要求删除某个日程(如「删除chat_001」「把下周三的会议删掉」「取消开庭日程」)时:
calendar.html,找到 标签重要提示: 对话删除仅移除 chat-events-data 中的条目,不会自动删除 localStorage 中已导入的本地日程。用户需要在日历 UI 中手动删除对应的本地条目。
当用户询问「XX哪天开庭」「XX事件什么时候」「今天有什么安排」「这周有什么日程」等问题时:
calendar.html 中 的 JSON 数组日历 HTML 应用本身提供以下交互功能(用户手动操作):
chat_imported 记录,防止重新导入时复活删除功能注意事项:
confirm()),兼容嵌入式 WebView 环境Enter 确认删除,Esc 取消chat_imported 记录已清除)chat-events-data 中的原始数据不变deleteEvent() 中使用局部变量 idToDelete 立即捕获 editingId 的值,避免因 doCloseModal() 异步重置 editingId 导致闭包引用失效(删除无效)chat-events-data。用户在日历中点击 📥 导入即可同步。chat-events-data 中对应条目。用户点击 📥 导入后覆盖本地日程。chat-events-data 中移除。注意:这仅删除对话数据源中的条目,已导入到 localStorage 的本地日程需用户在日历 UI 中手动删除。chat-events-data 和对话上下文中检索并回答。对话操作与日历 UI 的协作流程:
chat-events-data → 用户在日历中点击 📥 导入 → 数据进入 localStoragechat-events-dataCtrl/Cmd+N 新建、← → 翻月、Esc 关闭弹窗alert/confirm),确保在 WorkBuddy 嵌入式 WebView 中可靠运行addEventListener 绑定事件(不使用内联 onclick 属性),避免 ID 注入问题和事件冒泡异常confirm(),支持键盘快捷键(Enter 确认 / Esc 取消)和遮罩层点击关闭data-event-id 属性 + 父容器 click 监听),安全可靠localStorage(workbuddy_calendar_events) 中localStorage 的 workbuddy_calendar_chat_imported 中,避免重复导入完整的日历 HTML 应用,包含月历视图、事件管理、颜色分类、导入机制。部署到工作区后可通过 WorkBuddy 侧边栏预览标签页打开,无需任何服务器或外部依赖。
相关专题
热门下载
相关下载
精品课程
共1课时 | 280人学习
共1课时 | 236人学习
共1课时 | 187人学习