灵感:能力工具箱 chrono-date(pkg: chrono-node)。
把跟进备注里的口语时间(如「下周五下午三点」「后天上午」)解析为 Date,用于预约跟进、日历写入,本地完成、不请求后端。
chrono-node;中文场景使用中文 locale(如 zh 解析器),不要只用默认英文。{ ok: false, reason },禁止静默写成 Invalid Date。refDate(默认 new Date())解释相对词;时区用运行环境本地时区并在 UI 标明。iso 与可读文案。import * as chrono from 'chrono-node' /** 中文优先;若包版本导出不同,改为项目文档推荐的 zh 入口 */ const zh = (chrono as any).zh?.casual || chrono.casual export function parseFollowWhen( text: string, refDate: Date = new Date(), ): { ok: true; date: Date; iso: string; text: string } | { ok: false; reason: string } { const hit = zh.parse(text.trim(), refDate, { forwardDate: true })[0] if (!hit) return { ok: false, reason: '未识别到时间表达' } const date = hit.start.date() if (Number.isNaN(date.getTime())) return { ok: false, reason: '时间无效' } return { ok: true, date, iso: date.toISOString(), text: hit.text, } } // 示例:parseFollowWhen('下周五下午三点提醒我')本技能来自小葱技能站7w4.net。
chrono-node 中文解析,封装 parseFollowWhen。这个 Skill 能帮你把“明天下午三点”这样的口语日期转换成具体时间。文档写得很清楚,告诉你什么时候用、要注意什么,错误处理也有明确要求。不过它目前只提供说明文档,没有可以直接运行的代码,需要懂一些技术才能使用。适合需要这种日期解析功能的开发者,不适合完全没有技术背景的普通用户直接使用。