Rozwój sterowany specyfikacją dla agentów AI

SpecScore to otwarty, sprawdzany linterem format plików dla specyfikacji, zapisany w Markdown i YAML (YAML Ain't Markup Language), z interfejsem wiersza poleceń (CLI), który je sprawdza. Rozwój sterowany specyfikacją (SDD) to praktyka inżynierska, w której pisemna, testowalna specyfikacja — wymagania i kryteria akceptacji — stanowi źródło prawdy, według którego tworzy się i weryfikuje kod. Zamiast przechodzić bezpośrednio z promptu lub ticketu do kodu, najpierw uzgadniasz, co oprogramowanie ma robić, a dopiero potem budujesz według tej specyfikacji. Teraz, gdy agenci AI piszą dużą część kodu, specyfikacja jest tym, co powstrzymuje ich przed budowaniem niewłaściwych rzeczy.

  • Specyfikacja jest źródłem prawdy; kod z niej wynika i jest z nią weryfikowany.
  • Wymaganiom towarzyszą jawne kryteria akceptacji, więc pojęcie „ukończone” jest testowalne, a nie subiektywne.
  • Agenci AI sprawdzają w specyfikacji intencję zamiast zgadywać ją z kodu — mniej poprawek i zmarnowanych tokenów.
  • To uzupełnienie Test-Driven Development (TDD), a nie jego zamiennik.

Czym jest rozwój sterowany specyfikacją?

Rozwój sterowany specyfikacją odwraca typową kolejność prac. Zamiast traktować specyfikację jako dokumentację pisaną po fakcie — albo zupełnie z niej rezygnować — SDD czyni ze specyfikacji główny artefakt projektu. Kod, testy i recenzje odnoszą się bezpośrednio do niej.

Specyfikacja w tym ujęciu to nie ściana tekstu. Jest precyzyjnie ustrukturyzowana: to zestaw wymagań, z których każde posiada jawnekryteria akceptacji określające w testowalny sposób, co musi zostać spełnione. Taka struktura pozwala człowiekowi recenzującemu kod, zestawowi testów oraz agentowi AI interpretować ten sam dokument dokładnie tak samo.

Specyfikacja to ponadto żywy artefakt. Kiedy zmieniają się wymagania, najpierw aktualizowana jest specyfikacja, a dopiero za nią podąża kod — dzięki czemu specyfikacja nigdy nie staje się fikcją.

Dlaczego to ważne teraz: AI podnosi stawkę

Programistyczne agenty AI generują kod znacznie szybciej, niż człowiek jest w stanie go przeczytać. To przesuwa wąskie gardło projektu. Trudnością nie jest już samo napisanie implementacji — jest niązdefiniowanie intencji na tyle jasno, aby wygenerowany kod był dokładnie tym, o co chodziło. Agent, który otrzyma niejasny prompt, z pełną pewnością siebie wygeneruje kod prawdopodobny, lecz błędny — i to z zawrotną prędkością.

Specyfikacja staje się barierką ochronną. Kiedy ustalone zachowanie i kryteria akceptacji są spisane, agent ma jednoznaczny cel oraz gotową listę kontrolną do weryfikacji — a programista ma konkretną podstawę do akceptacji, zanim powstanie choćby linijka kodu. SDD to sposób, w jaki zespoły zapobiegają sytuacji, w której wysoka prędkość AI zamienia się w lawinę poprawek.

Jak działa rozwój sterowany specyfikacją

Proces jest pętlą, a nie jednorazowym dokumentem:

  1. Uchwyć intencję. Zapisz wstępny kierunek — problem, cel, otwarte pytania — zanim wybierzesz konkretne rozwiązanie.
  2. Zdefiniuj zachowanie. Przekształć uzgodniony kierunek w wymagania, każde z jawnymi, testowalnymi kryteriami akceptacji.
  3. Podziel na plan. Rozbij specyfikację na uporządkowane zadania, z których każde wskazuje spełniane kryteria akceptacji.
  4. Zaimplementuj. Buduj zadanie po zadaniu — programista lub agent AI — ściśle według specyfikacji.
  5. Zweryfikuj z kryteriami. Sprawdź wynik z kryteriami akceptacji, a nie na podstawie subiektywnego wrażenia.
  6. Utrzymuj specyfikację przy życiu. Gdy wymagania ulegną zmianie, zaktualizuj najpierw specyfikację; kod powstaje w ślad za nią.

Korzyści z rozwoju sterowanego specyfikacją

  • Rozbieżności ujawniają się na etapie przeglądu specyfikacji — tanio — zamiast po implementacji — drogo.
  • Status „ukończone” staje się obiektywny, ponieważ kryteria akceptacji są testowalne.
  • Specyfikacja stanowi wspólny kontekst dla wszystkich: produktu, inżynierii i agentów AI.
  • Zmiany są w pełni identyfikowalne — każde zadanie odnosi się do kryteriów, które realizuje.

Dlaczego w szczególności pomaga agentom AI

  • Maszynowo czytelna intencja: agent czyta wymagania bezpośrednio, zamiast wnioskować o nich z kodu.
  • Mniej kontekstu do załadowania: agent odpytuje tylko odpowiedni fragment specyfikacji zamiast wczytywać całe repozytorium.
  • Weryfikowalny wynik: kryteria akceptacji dają agentowi konkretny warunek pass/fail.
  • Trazowalność: wygenerowany kod można bezpośrednio powiązać z wymaganiem, które było powodem jego powstania.

Rozwój sterowany specyfikacją na tle innych praktyk

PraktykaŹródło prawdyRelacja z SDD
Test-Driven Development (TDD)Niezaliczone testy na poziomie koduUzupełniające — kryteria akceptacji stają się testami.
Tradycyjny PRDProsa pisana dla ludziMniej ustrukturyzowany; nietestowalny bezpośrednio i nieczytelny dla maszyn.
Same prompty („vibe coding”)Prompt i domysły modeluBrak trwałego, weryfikowalnego punktu odniesienia — problem, który rozwiązuje SDD.

Szczegółowe zestawienie SpecScore z innymi narzędziami do specyfikacji znajdziesz nastronach z porównaniami.

Zobacz też porównania z Kiro, Tessl, BMAD Method, Task Master AI.

Zestaw narzędzi — GitHub Spec Kit, OpenSpec, Kiro i pozostałe — jest na stronienajlepsze narzędzia rozwoju sterowanego specyfikacją w 2026.

Jak pisać kryteria akceptacji, które agent AI może sprawdzić, opisujejak pisać kryteria akceptacji.

Wzorce zdań EARS, których Kiro używa w wymaganiach, opisuje składnia wymagań EARS.

Jak lintować tę specyfikację w ciągłej integracji, opisuje lintowanie specyfikacji w CI.

Szablon specyfikacji funkcji w Markdown — dokument wymagań produktu (PRD) z wymaganiami, kryteriami akceptacji, planem i zadaniami — jest w szablonie PRD w Markdown.

Rozwój sterowany specyfikacją z Claude Code i Cursorem — co trafia do pliku funkcji, co zapisuje specscore agent setup i jak specscore spec lint działa w pętli i w CI — opisuje rozwój sterowany specyfikacją z Claude Code i Cursorem.

Kompromisy i kiedy nie stosować SDD

Rozwój sterowany specyfikacją nie jest darmowy. Przenosi wysiłek na analizę i precyzyjne pisanie przed uruchomieniem kodu, co jest chybionym podejściem w przypadku jednorazowego skryptu czy szybkiego eksperymentu. Ponadto specyfikacja pomaga tylko wtedy, gdy jest aktualizowana — porzucona specyfikacja wprowadza w błąd i jest gorsza niż jej brak. SDD zwraca się z nawiązką, gdy praca jest na tyle duża, że wymaga planowania, kod ma być utrzymywany lub zadanie zostaje przekazane agentowi AI do masowej realizacji.

SDD z agentami AI w praktyce

Aby realizować SDD z agentami AI, potrzebujesz dwóch rzeczy: maszynowo czytelnego formatu specyfikacji, zrozumiałego zarówno dla zespołu, jak i agentów, oraz sposobu, w jaki agenci mogą odczytywać, zapisywać i walidowaćte specyfikacje.

SpecScore to implementacja dokładnie takiego rozwiązania. Jest to otwarty format Markdown + YAML dla funkcji, wymagań i kryteriów akceptacji — zwykłe pliki w Twoim repozytorium — połączony z CLI, które agenci wywołują w celu odpytywania, edycji i lintowania. Ponieważ struktura jest czytelna maszynowo, agent może zapytać: „nad czym powinienem teraz pracować?”, otrzymać otwarte wymagania z ich kryteriami akceptacji, a następnie zweryfikować z nimi swoją pracę. Jest niezależny od narzędzi i w pełni open source.

Zacznij od Skilli AI dla Twojego agenta lubzainstaluj CLI.

Często zadawane pytania

Czy rozwój sterowany specyfikacją to to samo co test-driven development (TDD)?

Nie. TDD steruje implementacją za pomocą niezaliczonych testów na poziomie kodu. Rozwój sterowany specyfikacją działa poziom wyżej: najpierw ustala planowane zachowanie i kryteria akceptacji w spisanej specyfikacji. Te podejścia się uzupełniają — kryteria akceptacji ze specyfikacji często stają się testami napędzającymi TDD.

Czy rozwój sterowany specyfikacją spowalnia pracę?

Wymaga poświęcenia czasu przed napisaniem kodu, ale eliminuje czas marnowany na poprawianie tego, co zrobiono błędnie. W przypadku jednorazowych skryptów koszt jest nieuzasadniony. W przypadku wszystkiego, co agent AI generuje na większą skalę lub co zespół musi utrzymać, napisanie specyfikacji w pierwszej kolejności okazuje się szybsze od początku do końca.

Jaka jest różnica między specyfikacją a dokumentem PRD?

PRD to najczęściej proza skierowana do ludzi. Specyfikacja w SDD jest ustrukturyzowana i testowalna — dyskretne wymagania z jawnymi kryteriami akceptacji — dzięki czemu zarówno recenzenci, jak i agenci AI mogą działać precyzyjnie.

Jak agenci programistyczni AI korzystają ze specyfikacji?

Gdy specyfikacja jest czytelna maszynowo, agent odpytuje ją o wymagania i kryteria akceptacji istotne dla bieżącego zadania zamiast ładować cały codebase, a następnie weryfikuje wynik z tymi kryteriami — chroniąc przed kodem pozornie poprawnym, lecz niezgodnym z celem.

Czym jest SpecScore?

SpecScore to otwarty, lintowalny format plików dla specyfikacji, zapisany w Markdown i YAML, z interfejsem wiersza poleceń (CLI), który je odpytuje, edytuje i lintuje. Format jest w publicznym repozytorium specscore/specscore.

Na jakiej licencji jest SpecScore?

Specyfikacja i dokumentacja w publicznym repozytorium specscore/specscore są na CC BY 4.0. Referencyjny interfejs wiersza poleceń (CLI) w specscore/specscore-cli jest na Apache-2.0.

Czy rozwój sterowany specyfikacją wymaga jednego dostawcy AI?

Nie. Specyfikacje to pliki tekstowe w repozytorium. CLI to lokalny program. AI Skills na tej stronie opakowują to CLI dla agentów, które umieją uruchamiać skills. Format nie wymaga jednego dostawcy.

Jak zainstalować CLI?

Instrukcja jest pod /pl/cli/install/, a start także przez AI Skills. Program CLI pochodzi z specscore/specscore-cli.

Zacznij budować w oparciu o specyfikacje ze swoim agentem AI

SpecScore daje Twojemu agentowi otwarty format specyfikacji oraz CLI do ich odpytywania i weryfikacji.

Have an idea how to improve this page?