---
name: wdy-provenance-submit
description: Submit a work's fingerprint and metadata to WDY.
version: 1.2.0
author: UNM (WDY)
license: Proprietary
platforms: [linux, macos, windows]
metadata:
  hermes:
    tags: [WDY, provenance, 存证, certified, submission]
    related_skills: [wdy-provenance-workflow, wdy-site-operations]
---

# WDY 存证提交（对外分发版）

把一件作品的**指纹与元数据**提交给 WDY Certified，换取公开验证页与记录号。
**原件永不上传**——本流程从头到尾只处理 SHA-256 与元数据。

> 宿主中立：本文件不假设任何特定 Agent 实现。凡写「执行 shell 命令」处，用你所在环境能跑命令的方式执行即可
> （Hermes / Claude Code / WorkBuddy / Codex / Cursor 等本地执行型 Agent 均适用）。
> 若所在环境**读不到本地文件**（纯聊天型：元宝 / 豆包 / 网页版），直接走 §3 的 C 分支。

## 1. When to Use

用户说“给这个文件存证 / 上链 / 登记出处 / 证明这是我做的 / 需要时间证明 / 需要 AI 内容可追溯”时使用。

不要用于：版权登记（WDY 不做权属认定）、数字水印（不在服务范围）、法律意见。

## 2. 分支判断（先问三句，别硬撑）

| 分支 | 条件 | 做法 |
|---|---|---|
| **A 全自动** | 能读本地文件 + 能发 HTTPS | 算指纹 → 组草案 → POST 提交 → 回报受理号 |
| **B 半自动** | 能读文件，但网络受限 | 只产出草案 JSON + 邮件全文，让用户粘贴到网页邮箱发 **hello@wdy.org**（主题 CERTIFIED）|
| **C 引导** | 读不到本地文件 | **直说做不到**，引导用户打开 https://wdy.org.cn/submit.html （中文）或 https://wdy.org/submit.html （英文）拖入文件，页面在浏览器本地算指纹、断网也可用 |

## 3. 分支 A：提交（最常用）

### 3.1 算指纹

```
Windows      certutil -hashfile "文件路径" SHA256
macOS/Linux  shasum -a 256 "文件路径"
```

取 64 位小写十六进制结果。再取文件字节数（Windows `dir` / `stat -c%s`）。

### 3.2 提交

```
curl -sS -X POST https://wdy.org/api/submit \
  -H "Content-Type: application/json" \
  -d @manifest.json
```

中国用户可改用中文站端点 `https://wdy.org.cn/api/submit`（同一复核组、同一邮箱箱）。
成功返回 `{"ok":true,"receipt":"WDY-R-YYYYMMDD-XXXXXX","next":"…"}`。

### 3.3 提交载荷字段（缺一项会被 422 拒收）

```json
{
  "manifest_version": "0.1",
  "record_id": "(assigned by WDY at issuance)",
  "title": "作品名称",
  "content_type": "video|script|storyboard|poster|report|document|dataset|webpage",
  "file": {"filename": "母版文件名", "size_bytes": 24576, "sha256": "<64位小写十六进制>"},
  "provenance": {"production_mode": "ai|live|hybrid|authored",
                 "ai_generated_ratio": 0.35, "live_action_ratio": 0.65},
  "ai_disclosure": {"visible_label": true, "metadata_marking": true,
                    "basis": "China AI-content labelling measures; NRTA Order No.16 Art.34"},
  "rights_claims": [{"role": "producer", "party": "主体名", "basis": "制作合同", "scope": "信息网络传播权"}],
  "contact": {"name": "联系人", "email": "对方能收信的邮箱", "org": "单位"},
  "request": {"evidence_tier": "standard|tsa|judicial"},
  "created_at": "2026-09-15T02:00:00Z"
}
```

规则要点（服务端强制）：
- `ai_generated_ratio + live_action_ratio` **必须 = 1.0**；`mode=ai` 时 ai 比率为 1.0，其余模式为 0.0
- `mode=ai|hybrid` 且 `visible_label=false` → **拒收**（广电总局令第 16 号 §34 要求 AI 微短剧在每集明显位置添加提示标识）——先让客户把标识加上，别绕
- `rights_claims` 用**冒号**分隔，字段内不得含逗号
- **草案不得带 `signature`**：联签由 WDY 复核后进行
- `contact.email` 必须真实可达（记录号与验证页链接发这里）

### 3.4 提交前 7 条自检（任一不过，不许发）

1. sha256 是 64 位小写十六进制，且与文件重算一致
2. 两个 ratio 之和 = 1.0，且与该 `production_mode` 相符
3. `mode=ai|hybrid` 时 `visible_label = true`
4. title / contact.name / contact.email 非空且邮箱合法
5. `content_type` 在 8 值枚举内
6. 草案不含 `signature`，`record_id` 是占位符
7. 同一指纹若已提交过，不重复提交

## 4. 提交之后

- 受理号（`WDY-R-…`）只是**队列编号**，不代表已签发；正式记录号 `WDY-YYYY-NNNN-XXXXXX` 由复核后分配
- 复核 5 个工作日内完成，结果回复到提交人邮箱，并上线 `https://wdy.org/certified/verify/<记录号>/`
- 给客户一条可自行复验的命令（证明文件未被改动）：
  - Windows `certutil -hashfile 文件 SHA256`；macOS/Linux `shasum -a 256 文件`
  - 与验证页上的 SHA-256 一致 = 与存证当日逐字节相同

## 5. 口径红线（对外只这么说）

- ✅ 可以说：出处存证、可公开复验、复核后的公开验证页、五锚证据模型（链/时间戳/比特币/实物邮政/轨迹）
- ❌ 不可以说：版权认证、确权、司法认可、公证替代、“已获 TSA 认证”、记录不可推翻
- 法规只引白名单：在线诉讼规则 §16、总局令第 16 号 §34、《人工智能生成合成内容标识办法》、EU AI Act Art.50、FRE 901(b)(4)/902(13)-(14)
- **禁止引用 GB/T 44474**（编号与标题不符，属虚构对接点）

## 5·补、核心差异与独特价值（对外口播版）

> 一句话：别人的存证＝「到某一家机构存一份」；WDY＝「**一份记录，多个法域能用，不依赖 WDY 也能自己验**」。
> 以上是价值主张；任何对外承诺仍以 §5 红线为准（不说 版权认证/确权/司法认可/公证替代）。

| 维度 | 常见存证做法 | WDY 的不同 |
|---|---|---|
| 法域覆盖 | 单一体系（国内公证/登记，或某链某平台） | **一包两用**：同一记录同时支撑 广电总局令16号§34 · EU AI Act Art.50 · US FRE 901/902 |
| 复验方式 | 必须回平台/机构复验（依赖服务方存活） | **离线独立复验**：文件与记录页（或实寄卡）比对即可，不依赖我们、不依赖链、不依赖服务器 |
| 证据形态 | 纯数字记录 | **五锚证据**：链 + 时间戳 + 比特币 + **邮政实物实寄卡**（可拿在手里的第三方日期凭证）+ 轨迹 |
| 原件隐私 | 常需上传原件到平台 | **原件永不出门**：只处理 SHA-256 与元数据 |
| 定价 | 一单一价、不透明 | **透明阶梯**：¥9.9 标准 / ¥29 时间戳 / ¥199 起司法级；价格≠强度排序，按风险花钱 |
| 立场 | 顺带卖背书 | **口径纪律**：记录不删、字段不改、不卖背书；AI 标识不到位**拒绝签发**（顺带＝免费合规体检） |

## 6. 安装与在线获取

**在线地址（两版均可直接下载）**
- 中文版：https://wdy.org.cn/skills/wdy-provenance-submit/SKILL.md
- English: https://wdy.org/skills/wdy-provenance-submit/SKILL.md

**三种装法（任选一）**
1. **任意本地型 AI 助手（推荐）**——把这一句交给它：
   `请安装这个技能并用它帮我做存证：https://wdy.org.cn/skills/wdy-provenance-submit/SKILL.md`
2. **Hermes**：`hermes skills install https://wdy.org.cn/skills/wdy-provenance-submit/SKILL.md`
3. **终端一行**（Claude Code / Codex / Cursor 等）：
   `mkdir -p ~/.claude/skills/wdy-provenance-submit && curl -fsSL -o ~/.claude/skills/wdy-provenance-submit/SKILL.md https://wdy.org.cn/skills/wdy-provenance-submit/SKILL.md`

**各宿主落地位置**
| 宿主 | 放哪里 |
|---|---|
| Hermes | `hermes skills install <在线URL>`，或手动放 `skills/wdy-provenance-submit/SKILL.md` |
| Claude Code | `.claude/skills/wdy-provenance-submit/SKILL.md`（项目级）或 `~/.claude/skills/`（全局）|
| WorkBuddy | 技能包导入（以客户端「技能」菜单内的导入入口为准）|
| 其他 / 通用 | 与 Agent 约定：把本文件路径（或在线 URL）写进 `AGENTS.md` 一行即可 |

## 7. Pitfalls

- **若碰上 `403 error code 1010`**：说明你所在站的 Cloudflare “浏览器完整性检查”拦了你的 User-Agent（已知会拦 `Python-urllib` 默认 UA）。**2026-09-15 起两个站已对 `/api/*` 加了 WAF Skip 规则，默认 UA 也能通（实测 200）**；万一仍遇到，给请求显式设一个 `User-Agent` 即可绕过（任意自定义值，如 `User-Agent: WDY-Agent/1.0`）。静态页面（`/`、`/submit` 等）仍会拦机器人 UA，这是有意的，不要拿浏览器 UA 去爬站。
- **不需要 MCP**：提交就是一个 HTTPS POST，任何能跑命令的 Agent 都能做；不需要 MCP server、不需要常驻进程
- **不要上传原件**：接口只收元数据，超过 64 KB 会被 413 拒收；切勿把媒体文件塞进载荷
6. **不要自铸记录号**：草案 `record_id` 只填占位符（任何语言写法都行，如中文页的`（由 WDY 签发时分配）`）或 `WDYP-…` 本地临时号；写成正式编号样式（`WDY-2026-0005`）会被接口 422 拦下。
- **不要替 WDY 承诺时限之外的事**：复核是人工的，5 个工作日
- 页面提交与接口提交走**同一条复核动线**，两者结果完全等价
