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.
npx agentmods add skills/today-hbw/claude-code-dev-workflow/forge-prdnpx skills add Today-Hbw/claude-code-dev-workflow --skill forge-prdgit clone --depth 1 https://github.com/Today-Hbw/claude-code-dev-workflowWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/today-hbw/claude-code-dev-workflow/forge-prd)<a href="https://agentmods.dev/skills/today-hbw/claude-code-dev-workflow/forge-prd"><img src="https://agentmods.dev/badge/skills/today-hbw/claude-code-dev-workflow/forge-prd.svg" alt="Measured on agentmods" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00027 | $0.01916 |
| Opus 5 | $0.00014 | $0.00958 |
| Sonnet 5 | $0.00005 | $0.00383 |
| Haiku 4.5 | $0.00003 | $0.00192 |
Grade A, and why
forge-prd 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 3d 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.
How it starts
The opening of the file, as written. The whole thing — 182 lines — stays where its author put it; the contents beside it link to each section on GitHub.
forge-prd · 需求锻造方法论
你的任务
用户提供任何形式的原始素材(粗略想法、截图、PDF、HTML、MD),你通过 4 个阶段的强势拷问,将其锻造为一份清晰、可直接用于研发的 PRD,最终输出为 MD 文件。
4 阶段流程
阶段 1:吸收
读取所有素材文件,建立对需求的完整感知。
MD 文件:直接 Read 全部内容。
HTML 文件:Read 全部内容,忽略标签/样式/脚本噪音,聚焦正文需求内容。
PDF 文件:使用 Read 工具的 pages 参数分页读取,每次最多读 10 页,先读第 1 页判断是否相关。
图片文件(PNG/JPG):
- 使用 Read 工具读取图片(支持图片格式)
- 主动解读:输出一段描述,说明"我从这张图中理解到的是……",涵盖:
- 图中出现的字段、按钮、文案
- 布局结构、信息层级
- 流程走向、状态变化
- 标注的含义(如果有)
- 用 AskUserQuestion 请用户确认解读是否正确,或提供纠正
- 确认后才将图片信息纳入后续拷问
所有素材读完后,在对话中向用户简要汇报:"我读了以下素材……",让用户确认没有遗漏。
阶段 2:理解确认
在开始拷问前,先确认大方向没有理解错。
在对话中输出:
根据你提供的素材,我理解你想要的核心是:
- [复述你对需求的整体理解,2-5 个要点]
这个大方向正确吗?如果有偏差,请纠正。
用 AskUserQuestion 请用户确认。如果用户纠正了,调整理解后再次确认,直到用户确认大方向正确,才进入阶段 3。
这一阶段是安全网:如果连"用户要什么"都理解错了,后面的拷问全白做。不要跳过。
阶段 3:三层拷问
依次沿三个层次推进拷问,每层完成后再进入下一层。
第一层·模糊层
目标:找出素材中所有模糊表述,追问具体化。
扫描素材,识别:
- "某种方式"、"类似 XX"、"用户想要的"等模糊词
- 没有明确说明的动作主体、对象、时机
- 可以用数值量化但只给了定性描述的地方
每个模糊点用 AskUserQuestion 提一个问题:
- 先给出你的推荐具体化方案,说明理由
- 让用户确认或修改
示例句式:
素材中提到"支持批量操作",但没有说明具体支持哪些操作。 我理解是 [具体操作列表],理由是 [理由]。 你觉得这样可以吗?还是有其他考虑?
第一层完成后,用 AskUserQuestion 问用户:"模糊层还有要补充的吗?" 用户确认没有,进入第二层。
第二层·边界层
目标:追问边界条件、异常处理、极值情况。
针对每个需求点,追问:
- 数据为空 / 为 null 时怎么处理?
- 最大值 / 最小值 / 超限情况?
- 失败时如何提示?重试?回滚?
- 并发场景下有无问题?
每个边界点用 AskUserQuestion 提一个问题,先推荐方案再确认。
示例句式:
需求中提到"导入数据",但没有说明单次导入上限。 我建议设为 [具体数值] 条,理由是 [理由]。 你觉得这样可以吗?
第二层完成后,同样向用户确认是否有补充,然后进入第三层。
第三层·假设层(强势质疑)
目标:质疑需求本身的合理性,挑战隐含假设。
这是本插件最有特色的一层。不要温和建议,要像红队一样强势挑战:
- "这个需求真的需要做吗?如果完全不做会怎样?"
- "你确定要解决这个问题?有没有可能真正的问题在别处?"
- "有没有根本性的替代方案,能绕开这个需求?"
- "这个功能上线 3 个月后,用户真的会用吗?有什么依据?"
- "这个需求的复杂度是不是被低估了?有没有可能引发连锁问题?"
每个挑战用 AskUserQuestion 提出,给出你的质疑理由,让用户回应。用户可以选择:
- 承认质疑成立,调整需求
- 给出理由说明为什么仍然需要,插件记录后继续
注意:强势质疑的目的是促进思考,不是刁难用户。如果用户的回答逻辑自洽,接受并记录,不反复纠缠同一点。
第三层完成后,用 AskUserQuestion 做最终确认:"整体还有要补充的吗?" 用户确认没有,进入阶段 4。
阶段 4:输出
将所有阶段收集的内容整合为一份 MD 文件,自动写入磁盘。
文件命名规则
- 输入是单个文件 → 写到同目录,文件名为
<原文件名>.forged.md - 输入是目录 → 写到该目录,文件名为
PRD.forged.md - 输入来自对话 → 用 AskUserQuestion 询问用户想写到哪个路径
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.
- 3d ago First seen · 182 lines · 27 tokens per session scan A f5cb3a338ff6
forge-prd is a skill published in the GitHub repository Today-Hbw/claude-code-dev-workflow (22 stars, last pushed 23d ago), licensed MIT. It adds 27 tokens to every session and 1,916 once invoked, about $0.0001 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-30.
Other skills, from other repositories
metrics-instrumentation
Specification for instrumenting an opik-backend workflow with operational OpenTelemetry metrics — per-stage throughput/latency/error counters and native histograms, dimensioned per-customer (workspace). Use when a pipeline (scoring, ingestion, experiments, jobs) needs per-stage visibility. Covers metric emission only…
swarms
Build agents and multi-agent systems with the Swarms framework — the Agent class, tools, autonomous loops, memory, and the 15+ multi-agent architectures (SequentialWorkflow, ConcurrentWorkflow, GraphWorkflow, HierarchicalSwarm, SwarmRouter, and more). Use whenever writing, reviewing, or debugging code that imports…
happiness-skill
当用户问「怎么才能更幸福/为什么得到了还不满足/怎么减少焦虑」时调用。 核心理念: 幸福是缺憾感清空的默认状态, 是可训练的技能; 欲望是与自己的契约(得到前不快乐), 同时只留一个重大欲望; 活在当下。 不适用于: 临床抑郁等需要专业治疗的场景(本书方法不能替代医疗)。 Triggers: 幸福/不快乐/欲望/焦虑/知足/活在当下/happiness/desire/anxiety.
short-drama-storyboard
把剧本和视觉事实转成有镜头职责、空间连续性和可冻结起点的 剧集/ /分镜.md。 每镜使用二级标题 ## SHOT-...,同镜下用 ### 冻结关键帧提示词 写起始帧正文。.
setup-matt-pocock-skills
为本仓库配置工程技能——设置其 issue tracker、分诊标签词汇表和领域文档布局。首次使用其他工程技能前运行一次。.
contextpilot-savings
Use when a user asks how many tokens (or how much context/cost) ContextPilot has saved, or wants a ContextPilot savings status/summary inside Hermes Agent — e.g. "how much did ContextPilot save?", "show ContextPilot token savings", "ContextPilot status", "savings in the last 24h / all time", or "give me the raw…