Skip to content
Back to skills

Llm Wiki Prd

ASecurity

Generate PRDs, user stories, and release notes grounded in wiki knowledge. Reads entities, concepts, decisions, and customer pages as source material.

  • 6 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 6, 2026
ai-agentsgobash

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned October 6, 2026

npx -y skills add anh-chu/llm-wiki-pm --skill llm-wiki-prd --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Llm Wiki Prd?

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

Security grade badge for Llm Wiki Prd
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/anh-chu-llm-wiki-prd/badge)](https://www.skillsdirectory.com/skills/anh-chu-llm-wiki-prd)

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: llm-wiki-prd
description: Generate PRDs, user stories, and release notes grounded in wiki knowledge. Reads entities, concepts, decisions, and customer pages as source material.
when_to_use: Use for "write a PRD", "draft PRD for [feature]", "create user stories", "write user stories for [feature]", "generate release notes", "draft release notes", "write acceptance criteria". Only activates for artifact generation — not for wiki operations.
allowed-tools: Read Grep Write Bash
---

# LLM Wiki PRD

Sub-skill of llm-wiki-pm. Generates PM artifacts (PRDs, user stories, release notes) from wiki knowledge. The wiki is the only source of truth. Never fabricates product context.

## When This Skill Activates

- "write a PRD", "draft PRD for [feature/topic]"
- "create user stories", "write user stories for [feature]", "acceptance criteria"
- "generate release notes", "draft release notes", "what shipped"

Does not activate for wiki operations (ingest, update, lint, query). Those route to llm-wiki-pm.

## Orient Before Any Artifact

Per AGENTS.md, orient before any write. PRD generation requires knowing what pages exist to avoid duplication and ensure grounding.

**Orient steps (mandatory):**

```bash
WIKI=$(cat .wiki-path 2>/dev/null | tr -d '[:space:]')
WIKI=${WIKI:-${CLAUDE_PLUGIN_OPTION_wiki_path:-${WIKI_PATH:-$(pwd)}}}
```

① Read `$WIKI/SCHEMA.md` — tag taxonomy, domain scope
② Read `$WIKI/index.md` — what pages exist (prevents duplicate artifacts, identifies grounding material)
③ Read last 20-30 lines of `$WIKI/log.md` — recent activity
④ Read `$WIKI/overview.md` — current synthesis state

**Orient gate (enforced):** if steps ①-④ are not complete in this session, refuse any write. Surface: "Need to orient first. Running now." Then orient, then proceed.

## Key Constraint

Never invent product context. If the wiki has no page for a claimed feature, customer segment, or competitive context, say so and offer to create a stub first:

> "No wiki page found for [X]. Draft with that gap flagged, or create a stub page first?"

Every factual claim in a generated artifact must cite `[[page]]` from the wiki. No citation = no claim.

---

## Operations

Output structures for all three operations live in
`references/prd-templates.md` — copy the matching template when drafting.

### 1. PRD Draft

**Trigger:** "write a PRD", "draft PRD for [feature/topic]"

① **Ground in wiki** — `grep -ri "<feature>" "$WIKI" --include="*.md" -l`, then read
   every relevant page: entities, concepts, comparisons, customer pages, and
   `decision`/`roadmap`/`question`-tagged pages.
② **Surface gaps before drafting** — if a major section has no wiki backing
   (target persona, competitive context, core problem, key decisions), flag it and
   ask; never draft a fabricated section silently:
   > "Missing wiki coverage for: [X, Y, Z]. Draft with gaps flagged, or research first?"
③ **Draft** to `$WIKI/queries/prd-<feature-slug>-<YYYY-MM-DD>/README.md` using the
   PRD template (`references/prd-templates.md`).
④ **Cite inline** — every factual claim cites its source ("Per [[page]]..."); an
   uncited claim moves to Open Questions or `gaps:`.
⑤ **Populate `gaps:`** with unbacked sections — this surfaces in Coverage Audit.
⑥ **Update navigation** — add to `index.md` under `queries/`, append the `prd` log line.

### 2. User Stories

**Trigger:** "create user stories", "write user stories for [feature]", "acceptance criteria"

① **Ground in wiki** — same search as PRD ①.
② **Read persona pages** — `grep -ri "persona" "$WIKI/entities" -l`; read each
   relevant `entities/<name>-persona.md` for "As a [persona]" framing. If none exist:
   > "No customer entity pages found. Stories will use generic personas. Create customer pages first for grounded framing?"
③ **Generate stories** — `As a [persona], I want [action] so that [outcome].` One
   per distinct need, grouped by persona.
④ **Add acceptance criteria** — Given/When/Then per story; flag any criterion
   that's an assumption with no wiki backing.
⑤ **File** to `$WIKI/queries/user-stories-<feature-slug>-<YYYY-MM-DD>.md` using the
   template; append the `user-stories` log line.
⑥ **Link back** from the relevant concept/roadmap page.

### 3. Release Notes

**Trigger:** "generate release notes", "draft release notes", "what shipped"

① **Date range** — if unspecified, ask; "last release" → find the prior
   `release-notes` entry in `log.md` for the cutoff.
② **Read `log.md` for the range** — filter for `roadmap` pages, `decision` entries,
   `supersedes:` changes (deprecations), and crystallize/PRD `query` entries.
③ **Read the actual pages** — log summaries are thin; pull substance from the pages,
   never write release notes from log lines alone.
④ **Draft** by category using the template. User-facing copy stays clean — no wiki
   jargon or `[[wikilinks]]`; citations go only in the internal-context section.
⑤ **File** to `$WIKI/queries/release-notes-<YYYY-MM-DD>.md`; append the
   `release-notes` log line.

---

## Output Filing Conventions

| Artifact | Path |
|----------|------|
| PRD | `$WIKI/queries/prd-<feature-slug>-<YYYY-MM-DD>/README.md` |
| User Stories | `$WIKI/queries/user-stories-<feature-slug>-<YYYY-MM-DD>.md` |
| Release Notes | `$WIKI/queries/release-notes-<YYYY-MM-DD>.md` |

All artifacts:
- `type: query` in frontmatter
- `sources:` lists all wiki pages consulted
- `gaps:` lists sections with no wiki backing
- Added to `index.md` under the `queries/` section
- Logged in `log.md`

---

## Behavioral Constraints

Inherited from AGENTS.md. The following apply specifically to artifact generation:

**No fabrication.** Every claim must cite a wiki page. If no page exists, the claim goes to gaps or open questions.

**No silent gaps.** If a major PRD section has no wiki backing, surface it before drafting and populate `gaps:` in frontmatter.

**Orient first.** Read SCHEMA.md, index.md, log.md tail, overview.md before generating any artifact.

**No wiki jargon in user-facing copy.** Release notes and PRDs shared externally should read naturally. Internal citations go in frontmatter `sources:` and an internal-only section.

**No orphan artifacts.** After filing, add the artifact to `index.md` and link back from any relevant concept or roadmap page it references.

**Verify writes.** Re-read after writing. If frontmatter is malformed, do not update index.md or log.md.

---

## Pitfalls

- **Grounding first, drafting second.** Resist the pull to draft immediately. The grep + page reads are not optional.
- **Gaps are information.** A PRD with explicit gaps is more useful than one with confident fabrications.
- **Log summaries lie by omission.** For release notes, read the actual pages — not just the log lines.
- **Persona pages are pre-work.** Without `entities/<name>-persona.md` pages, user stories default to generic framing.
- **Release note scope creep.** Only include items with wiki backing. Don't pad from memory.

Files in this skill

  • SKILL.md6.9 KB
  • references/prd-templates.md3.4 KB

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.