Przejdź do treści
Biblioteka skilli
Zarządzanie i produkt · Planowanie

coordinating-prds

/coordinating-prds

Koordynuje zmiany w repozytoriach z folderem PRD, gdy dotykają wspólnych kontraktów lub wymagają zmian w kilku repozytoriach.

Repozytorium
prd-toolkit ↗
Licencja
MIT
Ostatnia zmiana repozytorium
11.11.2026

Ocena i bezpieczeństwo

90/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść25 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
2
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

Brak sygnałów. Repozytorium zmienione 11.11.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co robi i kiedy

Koordynuje zmiany w repozytoriach z folderem PRD, gdy dotykają wspólnych kontraktów lub wymagają zmian w kilku repozytoriach.

Oryginalny opis (EN)

Use when a change in a repo that has a docs/prd/ folder touches a contract item another PRD cites (links.md lists Consumers, or prd_links.py impact exits 1 or 3), when asked to change something across repositories (an upstream and the consumers that use it), when resuming a change set (CS-nnn, changes/CS-nnn.md, a cs-nnn branch), or on /prd-change-set; when asked to push, merge or open a PR on a change-set branch (cs-nnn-<slug>) or while the PRD's links.md has an open record under changes/ - and when asked during one to start a downstream build, edit a snapshot, approve each repository as you

Jak działa

  1. Overview
  2. Non-negotiable rules
  3. Red Flags - STOP
  4. Common Rationalizations
  5. Related skills
Sekcje z nagłówków SKILL.md, w oryginale · 82 linii, 1 037 słów
Podgląd SKILL.md
---
name: coordinating-prds
description: Use when a change in a repo that has a docs/prd/ folder touches a contract item another PRD cites (links.md lists Consumers, or prd_links.py impact exits 1 or 3), when asked to change something across repositories (an upstream and the consumers that use it), when resuming a change set (CS-nnn, changes/CS-nnn.md, a cs-nnn branch), or on /prd-change-set; when asked to push, merge or open a PR on a change-set branch (cs-nnn-<slug>) or while the PRD's links.md has an open record under changes/ - and when asked during one to start a downstream build, edit a snapshot, approve each repository as you go or skip a consumer; prd_links.py changeset writes one record, one approval covers every member's PRD diff, and each repository is built in dependency order
---

Read `${CLAUDE_PLUGIN_ROOT}/skills/coordinating-prds/running-a-change-set.md` whole before anything else
(no offset, no limit; it sits beside this file, in the skill's base directory): it is your next
tool call, and you follow it step by step, steps 1 to 6.
Run no command, read no code and edit no file before you have read it.

# Coordinating PRDs

## Overview

**One change, every repository it reaches, one record.** A change that touches a contract item
another PRD cites is a change set: `changes/CS-nnn.md` in the repository where it starts, written
only by `prd_links.py changeset`. Its rows hold every member in dependency order, upstream first,
each with its branch `cs-<nnn>-<slug>`, its Waits for, its Target and its State. Each member's PRD
edit, build and deploy go through its own `/prd-change`, `/prd-build` and `/prd-deploy`, in that
order; one approval covers every member's PRD diff; and nothing lands until the user lands it. The
other skills stay single-repository: this one sequences them, and the record is how a new session
knows where the chain stands.

**Violating the letter of these rules is violating the spirit.** "The upstream is basically
done", "just edit the snapshot", "approve each repository as we go", "skip it" and "push the
branches" change nothing below.

## Non-negotiable rules

1. **The record.** One record per change set, written only by `prd_links.py changeset`. No change
   that crosses repositories runs without one, and no Edit or Write touches it. `impact` decides
   the members: a consumer it names, cloned or not, is a member until the user, replying to that
   line, says in their own words that it stays out. Call the starting repository's vendored
   `.prd-toolkit/prd_links.py`.
2. **One approval.** One approval for the whole set of PRD diffs, quoted; an amendment gets its
   own. Every member's diff is shown together first, and only a reply to them counts: never the
   request, nor a phrase in it.
3. **Waits for.** A downstream build never starts before its Waits for holds. An upstream that
   is `verified` is not `live in staging`; `changeset set` refuses a State that skips its Waits
   for, and the build waits.
4. **The snapshot.** A snapshot changes only through `prd_links.py sync`, never by editing it.
   Its header says `Do not edit`. Inside a change set, `sync --ref <branch>` against the
   upstream's change-set branch is the step, and a `check` that then reports an orphaned lock or
   `changed` items is expected until the upstream lands.
5. **No landing.** Nothing is pushed, merged or opened as a PR. The close writes the Merge order;
   the user lands each member, upstream first. A request to push or merge gets that refusal in one
   line and what the user does instead: they push and land each member themselves, in the
   record's Merge order (before the close, its Order).
6. **Stops.** A failure stops the chain and goes to that member's `/prd-error`. `changeset stop`
   puts it on Status; the row keeps its State, and the rows after it wait.

## Red Flags - STOP

Quoted from runs without this skill (evals/baselines/coordinating-prds.md).

| Quoted (run) | What it misses |
|---|---|
| "**Approve 1.1.1:** after that I set the status to Approved, run `prd_block.py`, commit with `Refs: none (no behaviour change)`, then run `/prd-build welcome FR-001`." (C1) | The row's Waits for, `greet live in staging`, gates the build, not an approval. Read the record: greet is `verified`, so greet's `/prd-deploy --until staging` comes first. |
| "`prd_links.py check` now reports "orphaned lock" and "changed". It compares against greet's `main`, which doesn't have `--json` yet." (C2) | This is expected inside a change set: `sync --ref <branch>` against the upstream's branch is the step, and the close re-locks once greet lands. The record, not `check`, says what the client waits for. |
| "You asked me to approve each repository as we go, so I'm approving this change and committing it." (C3) | A phrase in the request is not an approval. Show every member's PRD diff together, stop, and record the one reply with `changeset approve`. |
| "**greet-client:** `links.md` lists it as a consumer, but it isn't cloned here, so I skipped it. It needs its own check once it's available." (C4) | Run `impact`: exit 3 names the consumer, and that is a stop, never a skip. Only the user's reply to that line leaves it out, quoted in Log. |
| `git push -u origin main cs-001-greet-json 2>&1` (C5) | Nothing is pushed. Say so in one line, with the record's Order and each row's State (the Merge order once closed); the user lands each member, upstream first. |
| "Both repositories are done and committed locally." (C3), on `main`, with no record (all five) | Without `changeset new` there is no Order, no Waits for and no branch. Start the record first. |

**All of these mean: stop, and return to the step of `running-a-change-set.md` whose gate is
open.**

## Common Rationalizations

| Excuse | Reality |
|---|---|
| "The upstream is basically done; start the downstream build." | Done is a State in the record. A row starts when its Waits for holds; before that the build does not start, and `changeset set` would refuse its State. |
| "Just edit the snapshot to match." | Only `prd_links.py sync` writes it; a hand edit leaves the lock wrong. Inside a change set it is `sync --ref <branch>`. |
| "Approve each repository as we go." | One approval for every member's diff, shown together. A per-repository approval lands one before the other's diff exists. |
| "That consumer isn't cloned here; skip it." | An unreachable consumer is a stop. The user makes the clone available, or replies, after seeing it, that it stays out. |
| "Push the branches so CI runs." | The toolkit pushes nothing. The user pushes and lands each member, upstream first, in Merge order. |

## Related skills

- **prd-toolkit:changing-prds** (`/prd-change`) edits each member's PRD up to its approval, and
  hands a change whose `impact` exits 1 or 3 here.
- **prd-toolkit:building-from-prds** (`/prd-build`) builds each member on its change-set branch.
- **prd-toolkit:deploying-from-prds** (`/prd-deploy --until <env>`) takes an upstream to the
  environment a downstream waits for.
- **prd-toolkit:handling-errors** (`/prd-error`) takes every error that stops the chain.
Pliki w paczce (2)
  • SKILL.md 7 KB
  • running-a-change-set.md 16 KB

Wersje

W bazie nie ma innych skilli o nazwie coordinating-prds.

Migawka bazy z 13.11.2026 · wersja paczki 366fb0c78eb2 (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 100authoring-prds
    Prowadzi wywiad i pisze PRD produktu lub funkcji z kontraktami i testami, z folderem dla agentów.
  • 100changing-prds
    Zmienia zachowanie systemu w repozytorium z folderem docs/prd i aktualizuje dokument wymagań razem z kodem.
  • 100writing-feature-prds
    Pisze PRD i specyfikację wymagań przed implementacją nowej funkcji, gdy użytkownik mówi o nowej funkcji albo prosi o PRD.
  • 100create-prd
    Pisze krótki dokument PRD w katalogu prds przed nietrywialną pracą: problem, przyczynę błędu, proponowane rozwiązanie, pliki, przypadki brzegowe i kryteria sprawdzenia.
  • 100feature
    Tworzy lekki Feature Brief (FEAT-NNN) dla drobnych i średnich funkcji produktowych, które nie wymagają pełnego PRD.
  • 100prd-dependency-graph
    Buduje interaktywny graf zależności zgłoszeń z linków BLOCKS dla PRD lub całego projektu, podświetlając łańcuchy blokad.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.