prd-sync

A synchronization workflow that imports a new version of an external requirements source, such as a maintained Excel file, into an existing product-requirements workspace. It compares versions, reconciles differences, and records human decisions without directly changing the main requirements documents.

In plain words
What is it for?
Use it to compare a new requirements file with the current product-requirements tree, prepare a reviewable change set, record reconciliation decisions, and recover interrupted synchronization work.
Why use it?
It helps preserve existing requirement identities and history when an outside source changes, while keeping ambiguous updates separate until a person decides.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/voidtechnology/voidtech-claude-plugins/prd-sync
Any agent
npx skills add VoidTechnology/voidtech-claude-plugins --skill prd-sync
Clone the repo
git clone --depth 1 https://github.com/VoidTechnology/voidtech-claude-plugins

Made for: Claude Code, Codex.

Per session 77 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,526 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00077 $0.02526
Opus 5 $0.00039 $0.01263
Sonnet 5 $0.00015 $0.00505
Haiku 4.5 $0.00008 $0.00253

Measured 2d ago against content hash b2f6d4560fd1, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

prd-sync scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/voidtech-product/skills/prd-sync/SKILL.md · 140 lines

How it starts

The opening of the file, as written. The whole thing — 140 lines — stays where its author put it; the contents beside it link to each section on GitHub.

prd-sync

把外部需求源(如人工维护的 Excel)的新版本安全地并入既有 PRD 工作树。心智是「先裁决身份,再改主本」:本技能只负责导入、归并和把裁决落进 reconciliation journal,从不直接修改 PRD 主本(ADR-0004 职责分工):

  • prd-from-requirements:从未建树的原始需求建立首个工作树(首建走它,不走本技能)。
  • prd-sync(本技能):导入某数据源的新版本,计算差异,与需求账本三方归并,形成可审阅的变更集与候选项,用户裁决后落 journal。
  • prd-maintain:按已确认变更集修改模块主本与全局主本,执行统一收尾不变式。

执行任何随插件分发的脚本前,先读 HOST-RUNTIME.md(插件内路径:skills/_shared/HOST-RUNTIME.md),按当前宿主选择唯一入口。下文保留的 ${CLAUDE_PLUGIN_ROOT} 命令是 Claude Code 形式;OMP 必须映射为 voidtech_product_runtime 调用,不得把未展开变量交给 shell。

全部操作通过同一个 CLI 执行:

python3 "${CLAUDE_PLUGIN_ROOT}/skills/prd-from-requirements/scripts/prd-sync.py" <command> <worktree> [options]

所有命令支持 --json 输出机器 payload。

规则单源

质量红线、推断标记规范、编号与追溯规则,全部以 prd-from-requirements 为准,本技能不复制、不另立。涉及主本修改口径时读 ${CLAUDE_PLUGIN_ROOT}/skills/prd-maintain/SKILL.md 对应工况。两处表述冲突时以 prd-from-requirements 为准并回报差异。

退出码语义(所有子命令统一)

退出码 含义 处置
0 成功 按命令输出继续
1 引擎/业务错误(锁被持有、源未注册、源已退休、校验失败等) 把 stderr 报给用户,按错误修正后重试
2 用法错误(参数缺失、多源未指定 --source 等) 修正命令行
3 读取栅栏:存在未完成发布的 operation 走工况 5(recover),恢复后重试原命令
4 需要人工裁决/确认(迁移人工项、歧义裁决、rebaseline、恢复二选一) 把待裁决项呈现给用户,拿到裁决后带参数重试

任何命令退出码为 3 时,先执行工况 5,再回到原工况;不要绕过栅栏读工作树。

工况路由

按意图走对应工况。意图不明确时,先用一句话向用户确认归属,不要猜。

1. 存量迁移(老工作树首次接入 source sync)

适用:prd-from-requirements 早期生成、还没有 prd-worktree.json 机器清单的工作树。

  1. 只读分析:

    python3 "${CLAUDE_PLUGIN_ROOT}/skills/prd-from-requirements/scripts/prd-sync.py" migrate <worktree> --dry-run
    
  2. 把输出中的人工确认项逐条呈现给用户(itemKey、所在 sheet/模块),对照原始 xlsx 确认每条的目标需求编号;区间级追溯缺口如实告知(缺口未清零时提交会被引擎拒绝,无「部分迁移」)。

  3. 拿到全部裁决后提交:

    python3 "${CLAUDE_PLUGIN_ROOT}/skills/prd-from-requirements/scripts/prd-sync.py" migrate <worktree> --confirm KEY=REQ-ID [--confirm KEY2=REQ-ID2 ...]
    

    裁决多时改用 --confirmations file.json(itemKey → 编号的 JSON 对象)。退出码 4 表示还有未裁决项,stderr 会列出缺哪些。

2. 导入源新版本(主路径)

  1. 只读同步(只推进 observed/pending 游标,不动主本):

    python3 "${CLAUDE_PLUGIN_ROOT}/skills/prd-from-requirements/scripts/prd-sync.py" sync <worktree> --input <新版.xlsx> [--source <id>]
    

Read the full file on GitHub · 140 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 140 lines · 77 tokens per session scan A b2f6d4560fd1

Subscribe to this mod's changes

prd-sync is a skill published in the GitHub repository VoidTechnology/voidtech-claude-plugins (2 stars, last pushed 29d ago), licensed Apache-2.0. It adds 77 tokens to every session and 2,526 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

dcf-model

Build discounted cash flow valuation workbooks in Excel.

NousResearch/hermes-agent · 14 tokens

xlsx

当电子表格文件是主要输入或输出时使用此技能。这意味着用户想要:打开、读取、编辑或修复现有的 .xlsx、.xlsm、.csv 或 .tsv 文件(例如添加列、计算公式、格式化、制图、清理混乱数据);从头创建新的电子表格或从其他数据源创建;或在表格文件格式之间进行转换。当用户通过名称或路径引用电子表格文件时特别触发——即使是随意提及(如"我下载目录里的 xlsx")——并且想对其进行操作或从中生成内容。也适用于将混乱的表格数据文件(格式错误的行、错位的表头、垃圾数据)清理或重构为规范的电子表格。交付物必须是电子表格文件。当主要交付物是 Word 文档、HTML 报告、独立 Python 脚本、数据库管道或 Google Sheets…

agentscope-ai/QwenPaw · 232 tokens

audit-xls

Audit a spreadsheet for formula accuracy, errors, and common mistakes. Scopes to a selected range, a single sheet, or the entire model (including financial-model integrity checks like BS balance, cash tie-out, and logic sanity). Triggers on "audit this sheet", "check my formulas", "find formula errors", "QA this…

anthropics/financial-services · 104 tokens

google-drive-sheets

Find, read, export, edit, and manage the user's Google Drive, Docs, Sheets, and Slides through per-user OAuth.

yc-software/qm · 31 tokens

feishu

Work with Feishu or Lark bots, docs, sheets, bitables, approval flows, and OpenAPI/MCP setup without hardcoding credentials.

Hmbown/CodeWhale · 33 tokens

sn-da-large-file-analysis

万行以上 Excel 数据集的高性能分析引擎。提供 openpyxl readonly 流式读取(iterrows 支持 10 万行以上)、Parquet 转换加速、内存优化、分块处理和大文件写入模式。遇到以下任一情况就主动使用本 skill:①数据行数 ≥ 10k(由 sn-da-excel-workflow 的行数评估步骤触发);②用户出现触发词:大文件 / 大数据量 / 性能优化 / 内存不足 / OOM / 百万行 / 十万行 / 流式读取 / Parquet / 分块处理 / large file / big data / streaming read / chunked processing;③直接使用…

OpenSenseNova/SenseNova-Skills · 218 tokens