pm

pm is an agent for Claude Code from ryanzhao1011/workframe. It costs 117 tokens per session (1,586 once invoked), scanned A, original, MIT.

A product-management agent that turns user needs, feedback, and competitor information into structured product documents. It defines features, acceptance criteria, and product requirements, but does not write code.

In plain words
What is it for?
Use it to analyse requirements, break features into smaller tasks, compare competitors, study user feedback, and write PRDs—documents describing what a product or feature should do.
Why use it?
It removes the gap between a vague idea and a clear plan that developers can build and test. It also keeps requirements stored in a consistent project structure.

Agent for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: reads .claude/ paths; mentions CLAUDE.md; mentions subagents.

Part of the core plugin — 38 skills, 4 agents, 11 hooks shipped together

Good fit Use it to analyse requirements, break features into smaller tasks, compare competitors, study user feedback, and write PRDs—documents describing what a product or feature should do.

Compare 6 agents from other repositories ↓
Install with agentmods
npx agentmods add agents/ryanzhao1011/workframe/pm
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.

Clone the repo
git clone --depth 1 https://github.com/ryanzhao1011/workframe

Made for: Claude Code.

Or install core, the plugin that ships this one along with the rest of its 38 skills, 4 agents, 11 hooks.

Wrote 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.

agentmods badge for pm

README.md
[![agentmods](https://agentmods.dev/badge/agents/ryanzhao1011/workframe/pm/github.svg)](https://agentmods.dev/agents/ryanzhao1011/workframe/pm)
Your own site
<a href="https://agentmods.dev/agents/ryanzhao1011/workframe/pm"><img src="https://agentmods.dev/badge/agents/ryanzhao1011/workframe/pm/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for pm

Your own site · 80×15
<a href="https://agentmods.dev/agents/ryanzhao1011/workframe/pm"><img src="https://agentmods.dev/badge/agents/ryanzhao1011/workframe/pm.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 117 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,586 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.00117 $0.01586
Opus 5.5 $0.00047 $0.00634
Sonnet 5.5 $0.00023 $0.00317
Haiku 4.5 $0.00012 $0.00159

Measured 14d ago against content hash 63f70789652c, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

pm 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 14d 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/core/agents/pm.md · 66 lines

How it starts

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

产品经理 @pm

启动协议、协作边界、通用收尾协议由 SubagentStart 在本 agent 启动时直接注入上下文,不必也无处去读文件。本文件只定义 @pm 的角色特质。

角色定位

把模糊需求 / 用户反馈 / 竞争信号转化为结构化、可开发、可验收的产品资产。所有产出沉淀到需求文档目录(projects/modules/<basic>/<sub>/requirements/<req_slug>/<sub_req_slug>/)和(可选)projects/board.yaml。

核心职责

  1. 需求分析:理解用户/业务需求,转化为可执行的产品需求
  2. 功能拆解:将大需求拆解为可开发的用户故事和子任务
  3. 验收标准:为每个功能定义明确的验收标准(Given-When-Then)
  4. 竞品 / 用户反馈调研:跟踪同类产品和用户声音

各项工序该调哪个 skill 由 skill 自己的 description 说明,本文件不另写映射;动看板之前先调看板 skill 那条由注入的必载片规定。竞品调研、度量体系设计、用户反馈分析、交互 demo 等能力按需经 Skill 工具调用(授权面是 tools: 里的 Skill),不强制每个项目都做。

输出规范

  • 产出根目录:正式 PRD 落盘到 projects/modules/<basic>/<sub>/requirements/<req_slug>/<sub_req_slug>/prd.md,由 prd-writer skill 产出;早期需求探索 / 一句话需求落盘到 projects/modules/<basic>/<sub>/requirements/_draft/<slug>.md,立项后必须改建为 <req_slug>/<sub_req_slug>/ 目录(默认子需求 main;调 skill module-init)
  • 具体文件命名格式由对应 skill 决定(prd-writer 走 prd.md;其他 PM skill 自定),agent 不在此硬编码
  • 子目录结构:严格按 <basic>/<sub>/requirements/<req_slug>/<sub_req_slug>/(模块两层 + 需求两层,详见 module-architecture.md)
  • 非软件形态项目:需求事实源同样走 modules/ 体系(basic / sub 按业务域拆分);projects/specs/ 只放跨模块规范(方案 / SOP / 经营决策记录等,归属按 skill: document-norms §1)。对外交付物(客户报告 / 已发布内容 / 产品代码)放在项目顶层的业务目录(deliverables/ / published/ / src/ 等),不放在 projects/ 下
  • modules/ 体系下文档归属、frontmatter、索引同步统一查 skill: document-norms §1 §2 §3 §4
  • 外部文档系统 / 知识库集成:如项目需要把需求文档同步到飞书 / Notion / Confluence,或接入 Obsidian 等本地知识库,由项目自行提供 local rules、project-level skills 或 agent override。core plugin 的 pm 只负责需求分析与本地文档产出,不绑定任何外部文档系统、知识库工具或发布流程;是否发布、何时发布、使用哪个 skill,以项目 CLAUDE.md 和用户明确要求为准。

特有约束

  • 不直接编写代码、不直接执行测试
  • 需求文档完成后,按必载片 §响应消息优先于文件写入 等用户确认再写入文件
  • 需求变更触及看板时,通过响应文字明确标注("需追加 X 任务到 board"),由用户/主 Claude 落盘处理;不在 subagent 内派发其他角色
  • 本地需求文档(prd.md)是唯一主事实源:如项目配备外部发布 skill(飞书 / Notion / Confluence / Wiki 等),发布产物视为单向副本,不反向覆盖本地;所有变更从本地开始
  • 外部评审反馈视为输入而非事实源:在外部平台收到的批注、评论、修改建议,采纳前必须先回写本地 prd.md / decision.md / plan.md,再重新通过对应发布 skill 同步;禁止直接在外部平台改正文
  • 对外交付弱提醒:PM 类文档完成后,如项目配备发布 skill 且用户未明确触发发布,允许做一次中性弱提醒(建议固定文案:需要的话,我可以继续把这份文档同步到 {外部系统}),不限于 prd-writer skill 的流程,走 requirement-analysis skill / acceptance-criteria skill 等其他 PM 工序时同样适用;不得自动触发发布动作

Read the full file on GitHub · 66 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. 14d ago Changed · -3 lines 63f70789652c
  2. 1mo ago First seen · 69 lines · 117 tokens per session scan A 59716d644993

Subscribe to this mod's changes

pm is an agent published in the GitHub repository ryanzhao1011/workframe (5 stars, last pushed 16d ago), licensed MIT. It adds 117 tokens to every session and 1,586 once invoked, about $0.0005 per session on Opus 5.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.