自然語言日期

👤 周 📦 v1.0.0 ⭐ 4.4 ⬇️ 110 下載
💻 開發程式設計 免費

📖 技能介紹


name: chrono-follow-date slug: prd20263897 displayName: 自然語言日期 version: 1.0.0 summary: 用 chrono-node 解析「下週五下午三點」等跟進時間,本地不請求後端。 license: MIT description: 用 chrono-node 在瀏覽器內把「明天」「下週五下午三點」等自然語言解析為跟進時間。當用戶需要自然語言日期、chrono-node、跟進時間口語解析、下週五三點時使用。


自然語言日期(chrono-node)

靈感:能力工具箱 chrono-date(pkg: chrono-node)。

把跟進備註裡的口語時間(如「下週五下午三點」「後天上午」)解析為 Date,用於預約跟進、日曆寫入,本地完成、不請求後端。

何時使用

  • 貼上/輸入「明天下午三點跟進」類文本
  • 快速填跟進時間,不想手點日期面板
  • 需要中文相對日期(昨天/今天/明天/下週)

硬約束

  1. 依賴 chrono-node;中文場景使用中文 locale(如 zh 解析器),不要只用預設英文。
  2. 解析失敗返回 { ok: false, reason },禁止靜默寫成 Invalid Date
  3. 以「參考時刻」refDate(預設 new Date())解釋相對詞;時區用執行環境本地時區並在 UI 標明。
  4. 多段匹配時優先取第一條或讓使用者確認;結果同時給 iso 與可讀文案。
  5. 不發起網路請求;不把整段聊天上傳第三方。

推薦實現要點

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提供免費和付費技能下載。

Agent 步驟

  1. 接入 chrono-node 中文解析,封裝 parseFollowWhen
  2. 自測:「明天」「下週五下午三點」「3天后」;無時間句應失敗。
  3. UI:解析成功寫入日期時間控制元件,並展示「已識別:xxx」。

附加

🤖 AI 評測

這個 Skill 能幫你把“明天下午三點”這樣的口語日期轉換成具體時間。文件寫得很清楚,告訴你什麼時候用、要注意什麼,錯誤處理也有明確要求。不過它目前只提供說明文件,沒有可以直接執行的程式碼,需要懂一些技術才能使用。適合需要這種日期解析功能的開發者,不適合完全沒有技術背景的普通使用者直接使用。

📊 多維度評分

適應性4.3
規範性4
有效性4.4
可靠性4.3
可信度5

📁 包含檔案 (4 個)

📄 README.md 846 B
📄 SKILL.md 2.6 KB
📄 reference.md 510 B
📄 templates/usage.md 225 B