Automated summary
Scans an Elixir/OTP codebase and opens GitHub issues whose body is a structured PRD, with support for appending numbered revisions to existing issues.
Strengths
- Enforces a consistent PRD template (overview, problem, current state, requirements, technical approach, acceptance criteria, out of scope) before any issue is created.
- Defines explicit issue-title conventions and manages P0–P3 priority labels through the gh CLI.
- The amend mode keeps the original PRD immutable and only appends dated, self-contained revision blocks with an incremented number.
- Requires reading the code and roadmap first, so the resulting issue reflects the real state of modules and the gaps found.
Limitations
- Tightly coupled to the Overmind project: it reads `lib/overmind.ex` and hard-codes Elixir/OTP constraints (no Phoenix, no external deps) that do not generalize.
- Requires an authenticated `gh` CLI and the expected labels (the `prd` label may need creating); without GitHub access the skill cannot complete.
- The Pipeline section is empty and no automatic prioritization exists — the priority must be supplied or prompted for.
Use it to turn a feature idea into a scoped GitHub issue documented by a PRD in an Elixir/OTP repository.
Avoid it on non-Elixir codebases, in repos without a configured GitHub CLI, or for a plain bug ticket that does not warrant a full PRD.
Security analysis
CautionThe skill is a straightforward documentation/issue-authoring workflow. Its only execution surface is the GitHub CLI used to create labels and issues, which is a legitimate but credential-bearing write action, and the amend path rebuilds the issue body destructively rather than appending. No secret handling, arbitrary downloads, or destructive commands. Rated caution rather than safe purely because of the unguarded gh/network write tooling.
- •Runs shell commands via the `gh` CLI to create and edit GitHub issues, i.e. authenticated network write actions (legitimate, but powerful and unguarded once invoked).
- •The amend workflow re-posts the entire issue body through a heredoc (`gh issue edit --body "$(cat <<'EOF' ..."`) rather than an incremental append; despite the 'original PRD is immutable' rule, a body containing the EOF delimiter or shell-special content could be truncated or mangled, silently destroying the original content.
- •Skill declares no allowed-tools while prescribing numerous bash/gh invocations, leaving execution boundaries undefined.
- •`gh label create` mutates repository metadata without confirmation.
- •No exfiltration, destructive filesystem operations, obfuscated payloads, or safety-disabling instructions were found.
- •No allowed-tools declared, yet the workflow requires shell execution of `gh` CLI commands with network and write access to a GitHub repository (creating and editing issues, creating labels).
- •The amend workflow uses `gh issue edit <number> --body "$(cat <<'EOF' ... EOF)"` with an `<original body unchanged>` placeholder; if the original body is not faithfully re-inlined, the entire issue body (including the immutable original PRD) is overwritten — a data-integrity risk on the remote tracker.
- •The skill instructs scanning repository files and reading CLAUDE.md; content pulled from the codebase is fed into issue bodies, so untrusted repository text could be echoed into issues (minor prompt-injection/content-provenance concern).
- •No destructive, exfiltrating, or obfuscated operations present; commands are transparent and limited to `gh issue`/`gh label` operations.
Examples
/po add a GenServer that tracks agent lifecycle and broadcasts state changes --priority P1/po implement the ps command to list running agents/po amend 42 add restart backoff policy to the supervisor requirementsname: po description: Product Owner - scans codebase and creates or amends GitHub issues with PRD. Use when: PRD, feature, issue, create issue, amend issue, what should we build, plan feature, design feature, scope, requirements, user story.
Product Owner - Overmind Expert
Scan the codebase, write a PRD, and open a GitHub issue.
Usage
/po <prompt>- Create a GitHub issue from the given feature description/po <prompt> --priority <P0|P1|P2|P3>- Create issue with explicit priority/po- Ask user what to build, then create the issue/po amend <issue_number> <summary>- Append a revision to an existing issue
If no --priority is given, ask the user which priority to assign.
Workflow
- Scan the codebase to understand current state:
- Read
lib/overmind.exto see existing modules and exports - Explore relevant source files for what's already implemented
- Identify gaps, dependencies, and integration points
- Read
- Read CLAUDE.md roadmap if the prompt maps to a roadmap item
- Write the PRD as the issue body (no local file)
- Create GitHub issue with conventional title and PRD body
Issue Title
Conventional format:
feat(<module>): <short description>
Examples:
feat(mission): add genserver for agent lifecyclefeat(cli): implement ps commandfeat(supervisor): add restart policiesfix(cli): handle missing subcommand gracefully
Rules:
- Lowercase after prefix
- Present tense imperative ("add", not "added")
- Under 70 characters
- Module name matches
lib/overmind/*.exor domain area
Issue Body (PRD)
## Overview
What we're building and why.
## Problem Statement
What user problem does this solve?
## Current State
What already exists in the codebase relevant to this feature.
## Requirements
- [ ] R-1: Description
## Technical Approach
- Affected modules
- New GenServers/Supervisors needed
- OTP patterns and data flow
## Acceptance Criteria
Given/When/Then scenarios.
## Out of Scope
What we're explicitly NOT doing.
Creating the Issue
gh issue create \
--title "feat(<module>): <description>" \
--body "$(cat <<'EOF'
<PRD content>
EOF
)" \
--label "prd" \
--label "P2: medium"
Replace "P2: medium" with the chosen priority label (P0: critical, P1: high, P2: medium, P3: low).
If the prd label doesn't exist, create it first:
gh label create prd --description "Product Requirements Document" --color "0075ca"
Report the issue URL to the user when done.
Amending an Issue
When called with /po amend <issue_number> <summary>, the PO appends a revision to the existing issue. The original PRD is immutable — never edit or overwrite it.
Amend Workflow
- Fetch the current issue using
gh issue view <number> --json title,body - Read the summary provided by the engineer
- Research the codebase if needed to validate the proposed changes
- Append a revision block to the issue body:
gh issue edit <number> --body "$(cat <<'EOF'
<original body unchanged>
---
## Revision <N> — <date>
**Source:** implementer research
### Changes
- <what changed and why>
### Updated Requirements
- [ ] FR-X: <new or modified requirement>
### Removed/Deferred
- ~~FR-Y: <requirement removed or moved to out of scope>~~
EOF
)"
Amend Rules
- Never modify the original PRD text — append only
- Increment revision number (Revision 1, Revision 2, ...)
- Each revision is self-contained — reader can understand what changed without diffing
- Link back to the source — who requested the change and why
- The PO may push back on the amendment if it contradicts product goals — surface disagreement to the user
Constraints
- Elixir + OTP — GenServer, Supervisor, ETS
- No Phoenix until M6 (web dashboard)
- No external deps unless strictly necessary
- Idiomatic Elixir — pattern matching, pipelines, supervision trees
Pipeline
/po <prompt> -> GitHub issue -> implementation -> /review -> /commit
^ |
| | (PRD feedback)
+--- /po amend --+
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/product-owner-prd-github-issues-mvhm5lco/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/product-owner-prd-github-issues-mvhm5lco' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/product-owner-prd-github-issues-mvhm5lco/download' --output '.skill-downloads/product-owner-prd-github-issues-mvhm5lco/SKILL.md.part' && mv '.skill-downloads/product-owner-prd-github-issues-mvhm5lco/SKILL.md.part' '.skill-downloads/product-owner-prd-github-issues-mvhm5lco/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
This file does not provide a usable name/description header for this native procedure. It remains available to download and inspect; use the manual method below.
Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/product-owner-prd-github-issues-mvhm5lco/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
PDF Reader
Productivity
Read and extract text from PDF files, including documents, reports, contracts, and spreadsheets. Works with local files, URLs, and WhatsApp attachments. Use whenever PDF content is needed, even if not explicitly requested.
Discord Messaging Workflows
Productivity
Use the message tool to send, edit, and moderate Discord messages with interactive components.
Interactive Verdict Preview
Productivity
Generate an interactive HTML preview of keep/drop verdicts for maintainer review, then process the pasted feedback JSON.