Skip to content
Skills Library
Management & product · Planning

make-req

/make-req

Decompose a task, plan, roadmap, or feature description into a structured set of requirements grouped for independent planning. Use when user says "make req", "make requirements", "decompose requirements", "extract requirements", or wants to break down a task into what needs to be true.

Repository
AutoSkillit ↗
Licence
MIT
Last repository change
08.05.2026

Assessment and security

100/ 100Class: good
Format25 / 25
Frontmatter with name and description, valid name, description up to 1,024 characters, name matching the folder.
Discoverability25 / 25
Description explains when to use the skill, has a reasonable length and uses third person.
Content35 / 35
At least 150 words and at most 500 lines, headings, step lists, examples or code.
Hygiene15 / 15
No placeholders such as TODO, no Windows paths, with a licence.
Riskno signals detected in the scan
Files in this package
1
Scripts
0
HTML comments
0
URLs in SKILL.md
0
Deprecation

No signals detected. Repository changed on 08.05.2026, without references to retired models or APIs.

Licence

MIT, open: use and modify while retaining author attribution.

What it does and when to use it

Decompose a task, plan, roadmap, or feature description into a structured set of requirements grouped for independent planning. Use when user says "make req", "make requirements", "decompose requirements", "extract requirements", or wants to break down a task into what needs to be true.

Triggers from the description

make reqmake requirementsdecompose requirementsextract requirements
Original author description

Decompose a task, plan, roadmap, or feature description into a structured set of requirements grouped for independent planning. Use when user says "make req", "make requirements", "decompose requirements", "extract requirements", or wants to break down a task into what needs to be true.

How it works

  1. When to Use
  2. Core Principles
  3. Critical Constraints
  4. Workflow
  5. Output Quality Checks
Original SKILL.md headings · 136 lines, 834 words
SKILL.md preview
---
name: make-req
description: Decompose a task, plan, roadmap, or feature description into a structured set of requirements grouped for independent planning. Use when user says "make req", "make requirements", "decompose requirements", "extract requirements", or wants to break down a task into what needs to be true.
hooks:
  PreToolUse:
    - matcher: "*"
      hooks:
        - type: command
          command: "echo 'Decomposing into requirements...'"
          once: true
---

# Requirements Decomposition Skill

Decompose a task, plan, roadmap, or feature description into a structured set of requirements. Requirements state what must be true when the work is done — never how to achieve it.

## When to Use

- User says "make req", "make requirements", "decompose requirements"
- User has a task description, plan, roadmap, or feature brief and wants requirements extracted
- User wants to break a large effort into independently plannable groups

## Core Principles

- **Requirements are acceptance criteria, not instructions.** Each requirement states a condition that must hold. It does not prescribe an approach, technology, pattern, or implementation step.
- **Group by co-implementation.** Requirements that would naturally be delivered together belong in the same group. Each group should be independently plannable — someone could take a single group and produce a complete plan from it without needing to implement other groups first (though groups may have ordering preferences).
- **Describe observable outcomes.** A requirement should be verifiable by observing the system's behavior, interfaces, or data — not by inspecting its internals.
- **Source material is unverified input.** Treat factual claims in the input (plans, scenarios, task descriptions, reports) as hypotheses about the codebase. Before incorporating any claim about how the system works into your output, verify it against subagent findings. When source material and codebase disagree, the codebase is authoritative.

## Critical Constraints

**NEVER:**
- Modify any source code files
- Create files outside `temp/make-req/` directory
- Prescribe implementation approaches or libraries in requirements
- Include implementation steps disguised as requirements ("Refactor X to use Y" is an instruction, not a requirement)
- Write requirements that can only be verified by reading source code

**ALWAYS:**
- Use subagents to understand the source material and relevant codebase context
- Group requirements by what would be implemented together
- Provide background and context for each group
- State requirements as verifiable conditions
- Write to `temp/make-req/` directory

## Workflow

### Step 1: Understand the Source Material

Identify the input: a task description, plan document, roadmap, conversation context, or file reference. Read it fully.

If the input references existing systems or codebases, launch parallel Explore subagents to understand:

- What exists today that the requirements relate to
- Current capabilities and boundaries
- Domain terminology and concepts used in the source material

### Step 2: Extract Raw Requirements

From the source material and codebase understanding, identify every distinct thing that must be true when the work is complete. At this stage, don't group — just capture.

For each candidate requirement, test it:
- Does it state a condition, not an action?
- Can it be verified without reading source code?
- Is it a single requirement, not multiple joined by "and"?
- Does it avoid naming specific technologies, patterns, or implementation approaches?

Rewrite any that fail these tests. Discard any that are purely implementation concerns with no observable outcome.

### Step 3: Identify Groups

Cluster requirements into groups based on what would be delivered together. Consider:

- Which requirements share a domain or functional area?
- Which requirements have mutual dependencies (one is meaningless without the other)?
- Which requirements could be handed to a separate team or planning effort?

Name each group with a short descriptive label. Order groups by suggested implementation sequence where dependencies exist — note these as ordering preferences, not hard constraints.

### Step 4: Add Context

For each group, write a brief background section covering:

- What this group of requirements pertains to
- Why these requirements exist (the problem or need they address)
- What a reader needs to know to plan an implementation
- Any relevant constraints, boundaries, or dependencies on other groups

Keep context factual. Do not suggest solutions.

### Step 5: Write the Requirements Document

Save to: `temp/make-req/requirements_{topic}_{YYYY-MM-DD_HHMMSS}.md`

```markdown
# Requirements: {Topic}

**Date:** {YYYY-MM-DD}
**Source:** {What was decomposed — task name, plan reference, or brief description}

## Overview
{One paragraph: what these requirements collectively describe and their intended use}

---

## {Group 1 Name}

### Background
{What this group pertains to, why it matters, relevant context}

### Requirements

- **REQ-{GRP}-001:** {Requirement statement}
- **REQ-{GRP}-002:** {Requirement statement}
- ...

{If this group depends on or relates to another group, note it briefly after the requirements list.}

---

## {Group 2 Name}

### Background
{...}

### Requirements

- **REQ-{GRP}-001:** {Requirement statement}
- ...

---

{Repeat for each group}
```

**Numbering:** `{GRP}` is a short uppercase abbreviation of the group name (e.g., AUTH, DATA, UI). Numbers are sequential per group starting at 001.

## Output Quality Checks

Before finalizing, verify:

- No requirement tells the reader what to build or how to build it
- Every requirement is a testable condition
- Groups are cohesive — moving a requirement to a different group would feel wrong
- A reader unfamiliar with the codebase could understand what each group demands from the background section alone
- No group depends on understanding another group's requirements to be plannable (cross-references to other groups are allowed for ordering, not comprehension)

Versions

RepositoryScoreLicence
This page · TalonT-Org/AutoSkillit100MIT
TalonT-Org/AutoSkillit100MIT

Database snapshot: 13.11.2026 · package version d9b4efcc4473 (SHA-256 digest of the entire package)

Downloads in the last 30 days: 0 · ranking

Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.

Similar skills

  • 100req-board-card
    在需求看板(req-board,http://127.0.0.1:8899)上为当前或指定项目创建需求卡。当用户说「帮我建卡」「记到需求看板」「建一张 xx 项目的需求卡」「把 xx 记录为暂缓/待办需求」,或要求把本项目讨论的方案、需求、待办登记到 req-board 时使用。
  • 100req-analyze
    Requirements analysis — problem decomposition, stakeholder scan, requirement structuring. Produces 1-requirements.md (Phase 1 lifecycle doc, NOT the per-task request ticket — for those use /create-request). Use when: analyzing needs before tech spec, decomposing requirements,…
  • 100make-groups
    Break a large plan, architecture proposal, or feature document into sequenced implementation groups for the make-plan pipeline. Use when user says "make groups", "group requirements", "sequence groups", or wants to decompose a large document into ordered implementation units.
  • 100req-review
    Review requirements docs for quality/completeness/consistency (IEEE 29148, ISO 25010, EARS); produce a gap list + fixes. Use when: review requirements, audit requirements, check requirements, requirements quality, are requirements complete, requirements analysis, requirements…
  • 86agile-v
    Use when writing traceable software requirements (REQ IDs, verification criteria), reviewing them for ambiguity, deriving tests from baselined requirements, building a requirements-to-test traceability matrix, or setting up human approval gates.
  • 100requirements-framework-usage
    This skill should be used when the user asks about "using requirements framework", "how to configure requirements", "add requirement checklist", "customize requirements", "requirements not working", "bypass requirements", "satisfy requirements", or needs help with the…

Feedback and reports

Your message goes to Bartosz Sokoliński. An email address is needed only for a reply. See the privacy policy.