본문으로 건너뛰기
cccskills
무료GitHub에 공개

create-prd

Turn an idea, ticket, or pain point into a product requirements document through guided questions. Define the problem, agree on success measures, and refine features and user experiences with mockups where visual decisions need clarification.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

원문원문 설명 보기

Only use when the user explicitly invokes this skill by name.

실행 점수 미검증

설치 방법 보기

이럴 때 유용합니다

  • Turning a rough idea into product requirements
  • Agreeing on the problem and measures of success
  • Comparing user flows and layouts through mockups
  • Preparing a specification for design and development

포함된 파일(3)

  • SKILL.md11.9 KB
  • references/prd_final_answer_resolved.md587 B
  • references/prd_template.md1.9 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

PRD Phase

You are creating a Product Requirements Document (PRD): the artifact that turns a raw idea, ticket, or pain point into a product spec the team can design and build from. It answers WHAT we're building and WHY - the user experience, functionality, and behavior. Leave technical implementation to the downstream TDD.

You run the PRD as a guided conversation. You settle the foundation - the problem and what success looks like - then grill the solution one question at a time, re-working the document after every answer so it always reads as a coherent spec - never a transcript of Q&A.

How the conversation works (read this before you start)

Exactly one question per message. End every message with a single question - never a second question, a stacked follow-up, or an "and also...". Offering 2-3 options to choose between is still one question; stacking multiple independent decisions into one message is not allowed. Walk down the solution tree one decision at a time: present the decision with its options, tradeoffs, and your recommendation, then stop and wait. If several things feel open, ask only the one that unblocks the rest - the others come after the answer. Never ask for a vague "any feedback?".

Run each decision as an interview loop; patch the doc only once the decision is resolved. Ask your one question, then work back and forth until it's settled. The user won't always answer outright - they may push back, think out loud, or ask a clarifying question of their own ("well, how would it work if quality finding = 'passing'?"). That's still part of the conversation, not a decision: answer it, keep the discussion going, and leave the document alone. A single user message is not by itself a cue to edit - patching mid-discussion churns the spec and derails the back-and-forth. Only once the decision is actually resolved do you flush it to the doc and move on to the next question.

When you flush a resolved decision, re-work the relevant section rather than appending to it. Fold the decision in: rewrite prose, redraw a mockup or diagram, reorder or remove earlier content as needed. A single decision often revises parts of the spec that have already started to emerge. Capture each decision in whatever form conveys it best - a mockup, diagram, or sketch - reaching for one when the decision calls for it, regardless of whether the question itself used one.

The doc is always a cohesive description of what's known - never a log. At any point, the PRD should read like a spec someone wrote on purpose: high-level, coherent, and current - not a list of answers, and not a changelog of decisions. Treat each answer as a reason to re-paint: restructure, reorder, and rebuild the section so it stays a clean, unified description of everything decided so far. Rewriting entire sections as you go is expected, not exceptional.

Show, don't tell. When discussing anything visual - UI flows, layouts, interactions, states - create an HTML mockup and display it inline. A quick sketch communicates more than paragraphs of prose. Keep mockups up to date as decisions evolve.

Make it read like a document a human designed for other humans. A reader should be able to skim the headers alone and come away with the shape of the product. Give every section and sub-point a header that states its takeaway - the way a good slide title asserts its message ("Reviewers comment without signing in"), not a generic topic label ("Sharing"). Keep paragraphs short, and place each mockup or diagram immediately beside the prose it illustrates - never let the text become a wall with all the visuals piled at the end. Lead with the point, then support it.

Stay in product space. Only ask product questions - user experience, functionality, and behavior. If you find yourself reaching for database schemas, storage locations, or implementation architecture, note it in a "Deferred to TDD" section and move on.

Get more context when you need it. When a decision depends on how the product or codebase actually works, spawn Agent() calls (codebase-locator, codebase-analyzer, codebase-pattern-finder, web-search-researcher, or the library researcher) before presenting options. Fold any new findings back into the research artifact.


<step index="1" name="understand-the-context"> <instructions> - Find the task directory: `ls -La .humanlayer/tasks/TASKNAME` (use Bash `ls -La` - not Grep/Glob - the directory may be a symlink). - Read every relevant file in the task directory **fully** (Read with no limit/offset), excluding research-questions docs. - Read the PRD template: `Read({SKILLBASE}/references/prd_template.md)`. </instructions> <guidance> ## Working from whatever inputs exist

There is no required upstream artifact. The product context might be a detailed ticket, a research doc, or just a couple of sentences describing what the user wants. Work from whatever is present.

  • Ground the PRD in the inputs you do have, and cite them as you write: "Per the ticket...", "The research doc notes...".
  • Don't duplicate upstream content into the PRD - reference it.
  • If the context is thin, don't invent requirements. Surface the gaps as questions during the interview and let the user fill them in.

Design system for mockups

If the work touches UI/UX, your mockups should match the user's product - its colors, typography, spacing, and components - not this application. Check the research doc for design-system details first. If none are documented, spawn a codebase-analyzer before you build mockups:

  • What design system or component library is used for $PRODUCT_AREA?
  • Primary colors (with hex codes), typography, spacing, borders, shadows?
  • What theming system exists, if any? </guidance>
</step> <step index="2" name="write-the-skeleton"> <instructions> Write the doc to `.humanlayer/tasks/ENG-XXXX-description/NN-prd-DESCRIPTION.md` (next zero-padded `NN-` index in the task dir; `DESCRIPTION` is a 2-4 word kebab-case slug).

Keep the skeleton as minimal as possible. No preamble, no setup, no summaries. The faster you reach the first question, the more the user stays engaged in building the PRD. Write only:

  • Frontmatter with type: design-prd, plus the top-level title
  • A Problem to Solve section with your first-draft problem statement
  • Empty What does business success look like, and how can we measure it?, Proposed Solution, and Solution Details headers - built out through the interview

Then respond immediately by opening the foundation with the first question - at most one short orienting line, then the question. Quote the actual "Problem to Solve" content you drafted so the user reacts to the exact wording, not a summary. For example:

I've started the PRD - you can view it in the right sidebar. First question: does this Problem to Solve sound right?

...your statement of the problem...

Tell me what's off, or confirm it and we'll move to what success looks like.

</instructions>
<guidance> ## Markdown formatting

When you write markdown that itself contains a code block showing other markdown (for example a fenced block that contains its own fence), use 4 backticks for the outer fence so the inner 3-backtick block doesn't close it early:

# Example heading
```bash
npm install example
```
</guidance> </step> <step index="3" name="settle-the-foundation"> <instructions> Settle the foundation one piece at a time, re-working the document as each is locked in. Wait for the user's response at each step.

a. Problem to Solve. The user reacts to the problem statement you quoted in your first question. Iterate with them until they're happy, then re-work the "Problem to Solve" section to reflect the agreed wording.

b. What success looks like. Once the problem is settled, move to success. The point of this section is to align on how we'll know the feature is actually driving results for users - a lever the team can read after shipping to decide whether the work was worth it. Treat that lever as part of the definition of done. Keep it squishy and fit it to the work, not just product analytics: this skill serves backend internal tooling, full-stack product, DevOps, and everything between - the lever might be a product metric, an adoption signal, a benchmark, an error-rate or latency target, or a qualitative read. Anything worth doing is worth measuring. Propose a metric (or a few options) with your recommendation - reference experiments or feature flags if relevant - and iterate until the user is happy. For very small changes there may be no sensible lever; if so, say that plainly and, with the user's agreement, record that rather than inventing a metric. Then re-work the "What does business success look like, and how can we measure it?" section.

Only open the solution interview (Step 4) once the problem and success metrics are both settled. </instructions>

</step> <step index="4" name="solution-interview"> <instructions> Now grill the solution. **Ask exactly one question per message, walking down each branch of the solution tree.** Resolve one decision, let it inform the next, and only then ask the next. Presenting 2-3 options to choose between is still one question - don't stack multiple decisions into one message, and don't append a second question or an "any feedback?". Each question is a brush stroke that adds detail to the document - you're progressively painting the Solution Details, not logging Q&A.

For each decision: present a single decision with options and your recommendation (for UI questions, show the options as mockups - "Option A vs Option B" with an inline mockup for each) -> work back and forth until the decision is resolved (clarifying questions and pushback are part of this, not a cue to patch) -> only then re-work the Solution Details so it absorbs the decision, keeping it one coherent spec. Reach for a mockup or diagram whenever it captures the decision best.

When an answer reshapes the work, touch every affected section in the same pass: refine Proposed Solution if the high-level approach changed, move ruled-out paths into Out of Scope, and keep mockups in sync with the prose. If the user requests changes to a mockup, pause the question flow, iterate on the mockup until they approve it, then resume. When a mockup is approved, embed it in the document with a task-artifact block if it isn't already there.

Stay in product space. Only ask product questions. If a question is really about schemas, storage, or implementation architecture, note it under a "Deferred to TDD" section and move on. </instructions>

<guidance> ## HTML mockups

Mockups are how you communicate visually - use them liberally when discussing UI.

  • Write HTML files to .humanlayer/tasks/{task-slug}/mockup-{description}.html
  • Follow the user's product design system (colors, fonts, components) found in Step 1; use realistic labels, not lorem ipsum
  • Keep each mockup focused on the decision at hand

Display inline:

.humanlayer/tasks/{task-slug}/mockup-{description}.html

Update mockups as decisions evolve; the final PRD should embed the "winning" versions. </guidance>

</step> <step index="5" name="solution-review-gate"> <instructions> When the solution is fully fleshed out, stop and hand it back for review. Because you've been building it decision by decision, the user hasn't read it as a whole yet. Say something like:

I think the solution is complete. Since we've built it up decision by decision, can you read the Solution Details top to bottom and confirm it hangs together before we wrap up?

Wait for the user's approval and incorporate any fixes they raise. </instructions>

</step> <step index="6" name="wrap-up"> <instructions> When the solution is approved, read the final answer template and follow it exactly (it points to the next step - the TDD): `Read({SKILLBASE}/references/prd_final_answer_resolved.md)`. Include cloud permalinks if available. </instructions> </step>

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Automate website navigation, form entry, and clicks through a browser command line tool. Extract page text, capture screenshots, and compare page states to check interactions or test web app behavior across screen sizes.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Automate form entry and button clicks
  • Extract text from web pages
  • Save page screenshots and PDFs
humanlayer/humanlayer1.2만2026년 10월 23일 업데이트

Rewrite dense or ambiguous English into short, direct sentences using principles from ASD-STE100, a standard for clear technical English. It preserves facts and conditions, identifies writing issues, and shows the original and revised text side by side.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Clarifying English instructions for another agent
  • Simplifying English tool descriptions and error messages
  • Making English easier for non-native readers
humanlayer/humanlayer1.2만2026년 10월 23일 업데이트

Inspect GitHub pull requests, read review conversations, and investigate failed automated checks with dedicated scripts. Get consolidated status reports, unresolved discussion threads, and failing job or step logs, with full logs saved for further inspection.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Checking pull request status in one report
  • Reading unresolved review conversations
  • Investigating failed CI jobs and steps
humanlayer/humanlayer1.2만2026년 10월 23일 업데이트

Update release base versions for supported packages, keep matching version fields in sync, and verify generated versions. The workflow covers committing and pushing the changes, with guidance for release steps after merging.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Prepare a package version update for release
  • Synchronize version fields across related files
  • Verify generated versions before pushing
humanlayer/humanlayer1.2만2026년 10월 23일 업데이트

calldiff

무료

Compare function call structures across Git commits, branches, or working files to support code review. Display call trees and trace paths from an entry function to a target function, with support for 22 languages.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Compare function calls before and after a change
  • Review call structure changes between branches
  • Trace paths from an entry function to a target
humanlayer/humanlayer1.2만2026년 10월 23일 업데이트

Automate browser tasks from the terminal using the chrome-devtools-mcp CLI. Inspect page elements, click and fill forms, navigate tabs, capture screenshots, and investigate network requests, console messages, performance, and memory through shell commands.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Automating form input and page navigation
  • Capturing page or element screenshots
  • Investigating network requests and console errors
humanlayer/humanlayer1.2만2026년 10월 23일 업데이트

humanlayer의 스킬 모두 보기

이 스킬의 문제 신고