omdsh-dev/dsh-tool-time2

@deepseek-ai/dsh-tool-time

DSH time tool plugin

AI 분석

为模型提供获取当前 UTC 时间、格式化日期等时间处理能力。适合需要精确时间戳、日程计算或时区转换的自动化任务。

패키지
@deepseek-ai/dsh-tool-time
버전
0.0.1
라이선스
MIT
최근 업데이트
2026. 8. 14.

설치

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:omdsh-dev/dsh-tool-time

一次性任务(headless)profile —— dsh run 默认使用 headless

dsh plugin --profile headless add "C:/path/to/dsh-tool-time"


包内 `dsh.bundle.patch`(指向 `cordis.patch.yml`)会在安装后自动把插件加入 profile 的 layer stack;插件的 `cordis.patch.yml` 以 `- insert:` 插入 `tool-time` 条目。插件缺失的 peer 依赖(`cordis`、`@deepseek-ai/dsh-tools`)由 profile 的 healed `profiles/node_modules` 回退安装提供。

> ⚠️ web 与 headless 是**不同 profile**:web 安装不会自动覆盖 headless;`dsh run` 默认使用 headless profile。Windows 路径使用正斜杠(`C:/...`)。

### 验证安装

```sh
dsh --profile web --dump-config | grep tool-time

运行验证

dsh run "使用 time 工具获取当前 UTC 时间"

手动安装与旧版本兼容

仅适用于不支持 Profile Bundle 的旧快照或插件开发调试环境:

  1. 放入 monorepo:cp -r time ~/.dsh/source/master/packages/tools/time(开发调试)
  2. apps/cli/package.json"@deepseek-ai/dsh-tool-time": "workspace:^"tsconfig.host.json references 加 { "path": "./packages/tools/time" }
  3. pnpm install && pnpm run build
  4. 在 profile 用户层 patch 插入插件(~/.dsh/profiles//cordis.patch.yml):
- insert:
    - id: tool-time
      name: '@deepseek-ai/dsh-tool-time'
  1. 验证:dsh --profile --dump-config | grep tool-time

0806 注意:patch 是 id-targeted 语义——裸 - id: 条目会报 entry "xxx" not found,必须用 - insert: 列表包裹。

已知限制

  1. 分发链路:@deepseek-ai/dsh-tools 私有,需 monorepo workspace
  2. add 是 UTC 日历运算,非当地墙钟语义(当地墙钟需 v2)
  3. 不支持自然语言日期("next week")与日历月/年差(v2)
  4. 时区数据来自 Node 内置 ICU:"跨平台一致" = "相同 Node/ICU 数据下一致"
  5. 输入年份范围为 1000–999900000999 拒绝:JavaScript Date.UTC 对这些年份有 1900+ 映射的历史行为)
  6. 精度契约iso/unix 保留毫秒;local/formatted 为秒精度展示字段
  7. offset 精度到分钟:v1 只支持现代时区;历史时区(<1900)的秒级 offset 会被截断

测试

pnpm test

功能/错误/攻击载荷共 63 个用例(fake clock、时区已知向量、月末钳制、严格 ISO 边界、年份范围、offset 跨年、极端 amount、原型链时区名等)。完整清单见本地维护的设计文档。

许可

MIT