Skip to content
Back to skills

Pm Feedback

ASecurity

Phase 7, Learn. Pull post-release signal from GitHub issues and other channels into the feedback table, then triage every item into a change request, a new story, a fix task, or wontfix with a reason. Use when the user says "/pm-feedback", "check the issues", "what are users saying", "triage feedback", or after a release.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 6, 2026
ai-agentsgobashgitdatabase

Security analysis

A100/100

Scanned October 6, 2026

npx -y skills add ridwankustanto/mandor --skill pm-feedback --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Pm Feedback?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Pm Feedback
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ridwankustanto-pm-feedback/badge)](https://www.skillsdirectory.com/skills/ridwankustanto-pm-feedback)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: pm-feedback
description: Phase 7, Learn. Pull post-release signal from GitHub issues and other channels into the feedback table, then triage every item into a change request, a new story, a fix task, or wontfix with a reason. Use when the user says "/pm-feedback", "check the issues", "what are users saying", "triage feedback", or after a release.
---

# /pm-feedback: close the loop back into the backlog

Shipping opens the next turn. Signal that stays in a GitHub tab is not signal.

## 1. Pull

```bash
gh issue list --state open --limit 100 \
  --json number,title,body,labels,createdAt,author
```

Import each one. `external_id` is what keeps re-runs from duplicating:

```bash
./pm add feedback source=github external_id=<number> kind=<bug|request|praise|confusion> \
  title="<title>" body="<first 500 chars>" status=new
```

Other channels are equally valid signal, and get the same treatment:
`source=telegram`, `source=support`, `source=user` for something said directly,
`source=analytics` for a metric that moved.

Before importing, check what is already there:

```bash
./pm q "SELECT external_id FROM feedback WHERE source='github'"
```

## 2. Triage, every item, no backlog of untriaged

Each item lands in exactly one of four places.

| Read | Action |
|---|---|
| The product does not do what it promised | a `fix` task under the owning story |
| A new thing the product should do | a new story under the right epic, via `/pm-spec` |
| The product should work differently than specified | `/pm-change`, because the spec is what is wrong |
| Not for us, or not now | `wontfix` with a written reason |

```bash
./pm set FB003 status=linked item=STORY002
./pm task title="fix: <thing>" parent=STORY002 type=fix
./pm set FB007 status=wontfix
```

The reason for a `wontfix` goes in the GitHub issue reply too, not just the database.
Someone wrote that issue.

## 3. Look for the pattern, not just the items

Five issues about the same screen are not five bugs, they are one design problem.
Before closing triage, ask:

- Which epic or screen collects the most feedback
- Which story is being contradicted by real usage
- What did the risk register in `/pm-discover` predict, and did it land

A pattern becomes a change request, not five tasks.

## 4. Feed the next turn

Confirmed patterns become the next milestone's intent. Say this explicitly to the user
with a form: here is what the signal says, here are two or three things we could do next,
which one. Their call, informed by evidence rather than by whoever complained loudest.

```bash
./pm add milestone name="<next outcome>" goal="<what is true when this lands>" status=planned
```

## Rule

Never close feedback silently and never let `status=new` accumulate. Run:

```bash
./pm q "SELECT count(*) AS untriaged FROM feedback WHERE status='new'"
```

`./pm status` surfaces that count, and a growing number there means the loop is broken.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.