Przejdź do treści
Biblioteka skilli
Programowanie · Pisanie

spec-write

/spec-write

Pisze specyfikację nowej funkcji lub zmiany formatu w projekcie Device przed napisaniem kodu.

Repozytorium
device ↗
Licencja
AGPL-3.0
Ostatnia zmiana repozytorium
13.11.2026

Ocena i bezpieczeństwo

100/ 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ść35 / 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
1
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
0
Przestarzałość

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

Licencja

AGPL-3.0, copyleft: przeróbki udostępniane innym muszą mieć tę samą licencję.

Co robi i kiedy

Pisze specyfikację nowej funkcji lub zmiany formatu w projekcie Device przed napisaniem kodu.

Oryginalny opis (EN)

Start spec-driven work on Device by writing specs/NNN-slug/spec.md (problem, behaviour, requirements, acceptance checks, out of scope, open questions). Use when someone asks for a new feature, a behaviour change, cross-layer or performance work, or a format or C ABI change, before any code is written.

Jak działa

  1. 1. Decide whether this needs a spec
  2. 2. Learn the area before writing
  3. 3. Create the folder
  4. 4. Fill it in
  5. 5. Stop for agreement
Sekcje z nagłówków SKILL.md, w oryginale · 52 linii, 453 słów
Podgląd SKILL.md
---
name: spec-write
description: Start spec-driven work on Device by writing specs/NNN-slug/spec.md (problem, behaviour, requirements, acceptance checks, out of scope, open questions). Use when someone asks for a new feature, a behaviour change, cross-layer or performance work, or a format or C ABI change, before any code is written.
---

# Write a spec

The spec says what we are building and why, in terms the maintainer can agree to. It does not say
how; that is `spec-plan`. Read `specs/README.md` and `specs/principles.md` first, and the finished
example in `specs/001-agent-skills-and-specs/`.

## 1. Decide whether this needs a spec

Typos, doc edits, obvious small fixes and behaviour-free refactors don't: make the change. Bugs
start with `bug-fix`; when `bug-fix` sends a bug here because its cause or fix is not obvious, carry
on below. Everything else gets a spec. If unsure, ask, or write a short one.

## 2. Learn the area before writing

Read enough code to describe today's behaviour accurately and to know which layers are involved:
`docs/architecture.md` for the overall shape, `docs/devices.md` for built-in devices, the ADRs in
`docs/adr/` for decisions already made, and the relevant section of `PROGRESS.md`. Run the app
(`cargo run --release -p dstudio-app -- --demo`) or render a review state if the change is visible.
A spec built on a wrong picture of today wastes everyone's review.

## 3. Create the folder

Take the next free number: `ls specs | grep -E '^[0-9]{3}-' | sort | tail -1`. Create
`specs/<NNN>-<short-slug>/` and copy `specs/_template/spec.md` into it.

## 4. Fill it in

- **Problem**: what is missing or wrong, for whom. No solution words.
- **Behaviour**: what the user sees and does, step by step, using the app's real names for menus,
  panels and controls. Include the undo label, what is saved with the project, and what happens
  with old projects.
- **Requirements**: numbered (R1, R2...), each testable on its own. Cover edge cases the user can
  reach: empty selection, very long or very short clips, sample-rate changes, missing media, undo
  in the middle of a gesture.
- **Acceptance checks**: numbered (A1, A2...), each naming the requirements it covers and how it is
  checked (a core or engine test, a self-test step, a review-state screenshot, a benchmark number).
  Every requirement is covered by at least one check.
- **Out of scope**: what a reader might expect that this deliberately leaves out.
- **Open questions**: every decision that belongs to the maintainer. Don't guess these; list them,
  with your recommendation for each.

Write in plain sentences. Describe behaviour in our own words: a product we study for reference is
a source of facts, never of text, art or code (principle 6).

## 5. Stop for agreement

Set `Status: Draft`, show the maintainer the spec and the open questions, and wait. When the
questions are answered, fold the answers into the spec, empty the Open questions section, set
`Status: Agreed`, and move on to `spec-plan`. Don't plan or write code before then, unless you were
told to run the whole workflow without stopping.

Wersje

RepozytoriumWynikLicencja
Ta strona · devicedaw/device100AGPL-3.0
selhorys/dataspoke-baseline100Apache-2.0

Migawka bazy z 13.11.2026 · wersja paczki d83eda3ca8b8 (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

  • 90sdlc-specify
    Tworzy lub aktualizuje specyfikację funkcji, czyli co i po co, bez implementacji, w pliku spec.md w katalogu specs.
  • 100spec
    Zadaje pytania zmieniające projekt, a potem pisze specyfikację z testowalnymi wymaganiami i listą poza zakresem, przed kodem.
  • 100write-specs
    Tworzy lub doprecyzowuje specyfikację funkcji SPEC SDD przed rozpoczęciem implementacji.
  • 100draft-spec
    Pisze lekką specyfikację funkcji do specs/NNN-slug/spec.md, z historyjkami użytkownika, listą zadań i checklistą ukończenia, w formacie pilnowanym przez skrypt kontrolny.
  • 100implement-spec
    Wdraża specyfikację etapami: krytykę, mapę wpływu, testy najpierw, implementację, kontrole deterministyczne i niezależny audyt przed wysłaniem.
  • 100spec-driven
    Stosuje konwencje pracy ze specyfikacjami: przepływ spec, plan i zadania, formaty plików, statusy i zasadę dryfu.

Uwagi i zgłoszenia

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