Skip to content
Back to skills

feature

ASecurity

Runs a feature end to end — grill, prototype, spec, tickets, build with TDD, code review, PR — resuming wherever the feature stands and stopping at each decision that belongs to the user, while keeping the Feature Line board current. Use when the user says /feature, wants to start or continue building a feature, asks what's next on a feature, or wants its board status updated.

  • 7 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 13, 2026
ai-agentsrustgonodecode-reviewgit

Works with

  • claude code

Security analysis

A100/100

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

Scanned October 13, 2026

npx -y skills add pardeep-kumar94/claude-idea-to-pr --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of feature?

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

Security grade badge for feature
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/pardeep-kumar94-feature/badge)](https://www.skillsdirectory.com/skills/pardeep-kumar94-feature)

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: feature
description: Runs a feature end to end — grill, prototype, spec, tickets, build with TDD, code review, PR — resuming wherever the feature stands and stopping at each decision that belongs to the user, while keeping the Feature Line board current. Use when the user says /feature, wants to start or continue building a feature, asks what's next on a feature, or wants its board status updated.
---

# Feature

`/feature <idea>` starts a feature. `/feature` alone continues the one in progress. The order is fixed; nobody has to remember it.

## Stages

| # | Stage key | Run | Done when | Stop for the user |
|---|---|---|---|---|
| 1 | `grill` | `/grill-with-docs` | user confirms shared understanding | each round's answers |
| 2 | `prototype` | `/prototype` | variant chosen, prototype on a `prototype/*` branch | picking the variant |
| 3 | `spec` | `/to-spec` | spec issue published | seam check |
| 4 | `tickets` | `/to-tickets` | sub-issues of the spec exist | approving the breakdown |
| 5 | `build` | `/implement` with `/tdd`, one ticket at a time in blocking order | every ticket has a commit that closes it | — |
| 6 | `review` | `/code-review` | findings fixed or explicitly accepted | which findings to fix |
| 7 | `pr` | `/pr` (body starts `Implements #<spec>`), then push and open the PR | PR merged | before any push; the merge |

Skip `prototype` (mark it `skipped`) when the feature has no UI. Never skip anything else without the user saying so.

**Running the stage skills.** Invoke every stage's skill yourself with the Skill tool, and follow it rather than copying its steps by hand. If one refuses model invocation (its `disable-model-invocation` flag came back, e.g. after an update), set that stage to `waiting` with `waitingOnYou` set to `Type /<skill> in Claude Code to …`, tell the user the exact command, and stop. The next `/feature` run picks up after it.

## Every run

1. **Setup.** If `docs/agents/` is missing, run `/setup-matt-pocock-skills` first.
2. **Find the feature.** Get this folder's project with `board.mjs project`, then list that project's open features on the board (see [BOARD.md](BOARD.md)): those whose `pr` stage isn't `done`. Features from other projects never count here. An idea was given → resume the open feature it matches, otherwise create a new one (even if others are open). No idea and one open → resume it. Several open → ask which. None and no idea → ask what to build.
3. **Record this session.** Once the feature is found or created, run `board.mjs session <id>` from the project folder. It notes this Claude Code session and folder on the feature, so the board can lead back here.
4. **Trust GitHub over the board.** With a spec issue, run `scripts/github-state.sh <spec-number>` and reconcile: ticket states, PR state, merge. Fix the board if it disagrees.
5. **Run the first stage that isn't `done` or `skipped`.** Mark it `active` on the board before starting.
6. **At each stop for the user:** set the stage to `waiting` and `waitingOnYou` to one plain sentence naming what you need, then ask in the conversation. On their answer, clear `waitingOnYou` and set it back to `active`.
7. **Record details as they happen.** Whenever a stage settles something, such as a grilling round being answered, a glossary entry or ADR written, a variant chosen, a seam agreed or tickets published, add or replace that stage's detail block right away (see **Stage details** in [BOARD.md](BOARD.md)). These blocks are what the user sees when they tap the stage.
8. **When a stage finishes:** set it `done` with a short `note` (e.g. `"6 tickets, #2–#7"`), add one `log` line, record links (spec, PR, prototype branch), and go straight on to the next stage, invoking its skill in the same run. Only the stops in the table pause the line.

## Rules

- **Never push, open a PR, create issues, or comment on GitHub without the user's go-ahead in this conversation**, even when the next stage needs it. The board saying "waiting" is not approval. For `spec` and `tickets`, the seam check and the breakdown approval are that go-ahead: publish only after the user says yes.
- During `build`, after every ticket: update that ticket's chip and `tests` with the real `pnpm test` (or the project's test command) counts. Never write numbers you didn't just see.
- Write the board only through `scripts/board.mjs`. It stamps every time itself; never type a time by hand (the one exception is `tests.at`, which comes from `date -u +%Y-%m-%dT%H:%M:%SZ`).
- The first time `/feature` runs in a conversation, tell the user they can watch the board with `node ~/.claude/skills/feature/scripts/board.mjs open`.
- If a board write fails, carry on with the feature and tell the user once. The board is a mirror, not the source of truth.
- Use the project's `GLOSSARY.md` terms in board notes and log lines.

## Example

> **User:** /feature password reset
>
> No open feature for this repo on the board. Creates `TestRepoBasicLogin--password-reset` with `grill` active, then runs `/grill-with-docs`. After round 1's questions, the board shows `grill` waiting: *"Answer grilling round 1 (6 questions) in Claude Code."* Once the user answers, a "Round 1" `qa` block with their answers goes on the `grill` stage, and tapping Grill on the board shows it.

Files in this skill

  • BOARD.md6.2 KB
  • SKILL.md5.2 KB
  • board/index.html59.5 KB
  • scripts/board.mjs13 KB
  • scripts/github-state.sh793 B

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.