Intro: jedno repo, dwie paczki, jedna zostaje
Superpowers i skille Matta Pococka to dwie paczki skilli, które większość deweloperów Claude Code zestawia ze sobą. Ten film mierzy je na tej samej funkcji, na jednym repo, z rachunkiem odczytanym na każdym etapie. Superpowers (v6.4.2) dostarcza piętnaście skilli i hook SessionStart, który je wymusza. Paczka Pococka (v1.3.1) ma dwadzieścia siedem skilli, żadnego hooka i siedmiokrokowy Main Flow wpisywany jako komendy slash. Jedyne publiczne zmierzone porównanie mówi, że Superpowers jest znacznie tańszy, a blog każdego, kto się przesiadł, twierdzi, że Pocock marnuje mniej tokenów. W tych przebiegach prawdziwe było jedno i drugie naraz: Superpowers zostawiony swojemu hookowi kosztował ćwierć Main Flow, a Superpowers prowadzony przez pełną pętlę niemal dwa razy tyle co Main Flow, przy tych samych pięciu na pięć ukrytych testów za każdym razem. Film odpowiada na pytanie, która paczka zostaje i który jeden etap decyduje o rachunku.
Dwa przeciwne zakłady: hook wymuszający skille kontra brak hooka
Superpowers to plugin z piętnastoma skillami i jednym hookiem. Przy każdym starcie sesji hook wstrzykuje do kontekstu cały skill using-superpowers (492 słowa), a ten mówi modelowi: "If you think there is even a 1% chance a skill might apply to what you are doing, you ABSOLUTELY MUST invoke the skill." Pętla, którą sprzedaje, przechodzi przez cztery skille: brainstorming, writing-plans, executing-plans i recenzję na końcu. Po instalacji hook ma sam kierować zlecenie do tej pętli.
Paczka Matta Pococka to zakład odwrotny: dwadzieścia siedem skilli i zero hooków. Nic nie jest wstrzykiwane, każdy krok to komenda slash, którą wpisujesz. Main Flow czyta się tak: grill-with-docs, to-spec, to-tickets, implement, code-review, pr, retro. Skill grill-with-docs ma trzydzieści pięć słów i tylko wywołuje dwa inne skille. implement ma sto trzy słowa i flagę disable-model-invocation: true, więc model nie może go załadować sam. Własne słowa Matta o jego pętli, z changelogu v1.3: "The agent loop is worse than a deterministic loop. But it is a good way to start with AFK work before your software factory is dialled in."
Obie paczki instalują się albo jako plugin Claude Code, albo jako skopiowane pliki, a readme Pococka mówi to wprost: wybierz jedną na agenta, bo instalacja obu daje każdy skill dwa razy. Nikt nie rozstrzygnął tego porównania, bo jedyny zmierzony pojedynek uruchomił paczkę Pococka tak, że pięciu z ośmiu workerów implementacji nigdy nie dostało skilla implement, a posty o przesiadkach mają opinie i żadnych liczb.
Bench: ledgerly, jedno zlecenie, pięć ukrytych testów i czysty punkt odniesienia
Repo to ledgerly, wymyślone API do fakturowania w czystym Node i TypeScript: warstwa domeny, plikowy magazyn JSON z migracjami schematu, warstwa HTTP i trzydzieści cztery zielone testy. Zlecenie funkcji ma trzy linie, napisane tak, jak pisze deweloper: dodaj płatności częściowe, wystaw kwotę zapłaconą i saldo, zachowaj działanie starego endpointu /pay i pamiętaj, że w magazynie są dane produkcyjne. Senior czytający to oczekuje pięciu rzeczy, których zlecenie nie wymienia: matematyki pieniędzy, walidacji, migracji plików produkcyjnych, właściwych kodów błędów i testów. Te pięć stało się ukrytymi testami akceptacyjnymi, których worker nigdy nie widzi. Patch referencyjny przechodzi wszystkie pięć, a nietknięte repo żadnego.
Każdy przebieg to świeża kopia repo, headless worker Sonnet 5.5, ta sama lista dozwolonych narzędzi i skryptowany product owner: drugi headless model bez narzędzi, który czyta tylko pięć wymagań prostymi słowami, odpowiada zwięźle i mówi "go on", gdy nic nie jest pytane. Każdy token i każde wywołanie skilla jest logowane na turę. Dwa ograniczenia na wstępie: headless oznacza, że nikt nie steruje w trakcie, a hook Superpowers odpala się tylko w pierwszej turze.
Czysty Claude Code, bez żadnej paczki, to punkt odniesienia, względem którego mierzony jest każdy słupek.
| Konfiguracja (funkcja 1) | Ukryte testy | Koszt przebiegu | Czas zegarowy | Zmienione linie |
|---|---|---|---|---|
| bare, 3 przebiegi | 5/5, 5/5, 5/5 | średnio $0.34 ($0.47, $0.27, $0.29) | 84.5 s | 142 |
Superpowers: co hook robi sam i ile kosztuje pełna pętla
Zostawiony swojemu hookowi, Superpowers zachowuje się tak: zlecenie jest wklejone, hook się odpala, model otwiera brainstorming, zadaje jedno lub dwa pytania i koduje. writing-plans ruszył zero razy w trzech przebiegach, a executing-plans nigdy. Wynik to pięć na pięć za około pięćdziesiąt centów i około dwie minuty, półtora raza więcej niż bare za ten sam wynik, przy czym sam brainstorming kosztuje z tego około dwudziestu dwóch centów. Sześć jednoturowych prób pokazało, że routing jest losowy, a nie wynika z błędu okablowania: z prawdziwym okablowaniem pluginu brainstorming odpalił raz na trzy próby, z okablowaniem benchu dwa razy na trzy.
Prowadzony ręcznie, z brainstorming, writing-plans i executing-plans wpisywanymi jako komendy slash w trybie Native (domyślnym od 6.4.1), każdy przebieg przeszedł całą pętlę. Znów pięć na pięć, za około $3.74 i dziesięć minut na przebieg: jedenaście razy bare i siedem i pół raza więcej niż przebieg kierowany hookiem, za ten sam ukryty wynik.
| Etap Superpowers (średnie funkcji 1) | Koszt |
|---|---|
| brainstorming | $0.166 |
| writing-plans | $0.266 |
| executing-plans | $3.307 |
| z czego sam build TDD | $0.974 |
| z czego subagent-recenzent całego brancha | $2.192 |
Recenzent to etap, który tłumaczy rachunek pętli. Skill executing-plans wysyła go, jego własnymi słowami, "on the most capable available model", a w każdym przebiegu był to model najwyższej klasy. Skill nazywa go jedynym świeżym kontekstem, jaki kupuje cały przebieg, i każe go nie pomijać. Przy tej funkcji nie znalazł nic, czego testy już nie udowodniły. Przy drugiej funkcji ten sam recenzent wziął $1.602 z przebiegu za $3.21, więc to nie jednorazowy wyskok, tylko sposób, w jaki skill jest napisany.
Main Flow etap po etapie: tanie plany, droga budowa
Paczka Pococka jest prowadzona jedynym możliwym sposobem: grill-with-docs zadaje pytania po jednym, około siedmiu na przebieg wobec jednego lub dwóch w brainstorming Superpowers. to-spec pisze spec, to-tickets tnie go na tickety, implement buduje wszystkie tickety w jednej turze i sam wywołuje tdd oraz code-review, a pr pisze tekst pull requesta. Każdy przebieg wywołał te same cztery skille w tej samej kolejności (grilling, domain-modeling, tdd, code-review): paczka jest deterministyczna w wyborze trasy. Dwanaście tur drivera było limitem benchu i dwa z trzech przebiegów dobiły do niego przed pr. Jedyny pełny przebieg skończył się treścią PR, czego żadna inna paczka nie zostawiła.
| Etap Main Flow (średnie funkcji 1) | Koszt |
|---|---|
| grill-with-docs | $0.204 |
| to-spec | $0.118 |
| to-tickets | $0.143 |
| implement | $1.125 |
| code-review | $0.439 |
| pr | $0.041 |
Przednia połowa planowania kosztuje poniżej pięćdziesięciu centów ($0.465), a implement i code-review to trzy czwarte rachunku. Suma to około $2.04 i siedem minut na przebieg, za każdym razem pięć na pięć: cztery razy więcej niż Superpowers kierowany hookiem i czterdzieści pięć procent mniej niż prowadzona pętla Superpowers. Diff jest większy, około 372 linii wobec 142 w bare, z około 28 dodanymi testami wobec 5, a sumy tokenów zgadzają się z dolarami: około 4,5 miliona tokenów na przebieg wobec pół miliona w bare, w większości odczyty cache długiego kontekstu. Main Flow zostawia po sobie spec, tickety i treść PR, co zespół może cenić bardziej niż czterdzieści centów, które to kosztuje. Limit dwunastu tur jest limitem benchu, człowiek szedłby dalej.
Trudniejsza funkcja: noty kredytowe i jedyny błąd, jaki ktokolwiek wypuścił
Pięć na pięć wszędzie nic nie mówi, więc na tym samym repo poszło drugie zlecenie: noty kredytowe, dwie linie z pięcioma ukrytymi regułami. Nigdy nie kredytuj faktury ponad jej wartość i trzymaj poprawny raport; zmigruj pliki produkcyjne; jedna ciągła numeracja bez luk; właściwe kody błędów; i unieważnienie opłaconej faktury przez notę kredytową, ze starym testem przepisanym, a nie usuniętym. Pierwszy trudniejszy kandydat został odrzucony, bo bare nadal dostawał na nim pięć na pięć. Walidacja najpierw: patch referencyjny przechodzi wszystkie pięć, nietknięte repo żadnego, a smoke run bare dał cztery na pięć, więc tym razem wyrocznia miała zęby.
| Konfiguracja (funkcja 2) | Ukryte testy | Koszt przebiegu | Dodane testy |
|---|---|---|---|
| bare, 2 przebiegi | 4/5, 5/5 | średnio $0.41 | 5 |
| Superpowers prowadzony, 2 przebiegi | 5/5, 5/5 | średnio $3.21 | 33 |
| Main Flow, 2 przebiegi | 5/5, 5/5 | średnio $2.07 | 31 |
Jedyne potknięcie: pierwszy przebieg bare wziął numer noty kredytowej przed walidacją zlecenia, tak jak robi to istniejąca trasa wystawiania faktur, więc odrzucone zlecenie spaliło numer i wystawiono CN-0004 tam, gdzie powinno być CN-0002. Audytorzy zaznaczają luki. Obie pętle złapały to tak samo, krokiem TDD, który napisał test na numerację przed kodem. Drugi przebieg bare też zrobił to dobrze, za czterdzieści pięć centów. Jedno potknięcie w dwóch przebiegach bare to punkt danych, nie wskaźnik. To, co pętle kupują tutaj, to testy, które po sobie zostawiają, a nie wynik.
Obie paczki naraz i pułapka marketplace
Najgłośniejszy wątek na ten temat mówi, że dwie paczki zainstalowane jako routery kolidują na nazwach slash, hookach sesji i skillach rywalizujących o ten sam zamiar. Zainstalowane razem w jednym projekcie i uruchomione przez Main Flow: hook Superpowers wstrzyknął swój tekst, wpisano sześć komend Pococka i ani jeden skill Superpowers nie został wywołany. Pięć na pięć, $2.33, w zakresie Main Flow. Dwa powody: skille Pococka wywoływane przez użytkownika mają flagę, która nie pozwala modelowi ładować ich samemu, a obie paczki nie mają wspólnej nazwy skilla. To jednak jeden przebieg; w innej sesji hook nadal mógłby pociągnąć skill Pococka wywoływany przez model.
Prawdziwa pułapka to wersja, którą dostajesz. Oficjalny marketplace pluginów Claude przypina paczkę Pococka na 1.2.3, siedemdziesiąt jeden commitów za upstreamem v1.3.1. Ta przypięta kopia nie ma implement-spec, pr ani retro; dwa issues są otwarte od 5 października, a 8 października Matt poprosił Anthropic na X o podbicie wersji: "All my users are stuck on v1.2." Ten sam marketplace przypina Superpowers o jeden patch wcześniej (6.4.1 wobec v6.4.2). Installer daje prawdziwe wydanie, plugin daje to, co jest przypięte w dniu instalacji. Sprawdź linię wersji, nie ten film.
Mapa etapów i werdykt: Superpowers zostaje
Superpowers zostaje. Zostawiony swojemu hookowi jest najtańszą zmierzoną ścieżką z prowadzeniem: około pięćdziesięciu centów za pięć na pięć, półtora raza bare. Jego pełna pętla jest najdroższą rzeczą, jaką zmierzono, około $3.74, a prawie cała różnica wobec Main Flow to jeden etap, recenzent całego brancha, którego executing-plans wysyła do najmocniejszego modelu. Zmień tę jedną linię albo przekaż tańszy model, a pętla ląduje blisko $1.55, poniżej $2.04 Main Flow. O rachunku decyduje recenzja, nie planowanie: ani grill, ani brainstorming niczyj nie ruszył tej liczby. Ścieżka kierowana hookiem ma własny haczyk, bo routing jest losowy (raz na trzy z okablowaniem pluginu); jeśli zależy ci na brainstormingu, wpisz go sam.
Main Flow daje ten sam wynik z większą liczbą artefaktów, przy rachunku cztery razy wyższym niż ścieżka kierowana hookiem. Jego przednia połowa planowania, od grill-with-docs do to-tickets, kosztuje poniżej pięćdziesięciu centów i jest jedyną rzeczą wartą pożyczenia: zainstaluj paczkę Pococka installerem, a nie przypiętym pluginem, i wpisz grill-with-docs, gdy zlecenie jest mgliste. Łączenie nic nie kosztowało w tym przebiegu.
| Mapa etapów | Decyzja |
|---|---|
| hook Superpowers kierujący zlecenie (brainstorming, TDD) | zostaw |
| grill-with-docs, to-spec, to-tickets Pococka ($0.465) | pożycz |
| linia modelu recenzenta w executing-plans | zmień |
Ograniczenia wprost: Sonnet 5.5 headless, dwie funkcje, dziewiętnaście przebiegów, skryptowany product owner, jeden błąd w dziewiętnastu przebiegach, wypuszczony przez bare. Większa funkcja albo zespół mogą cenić spec i tickety wyżej. Darmowy zasób to sam bench: wymyślone repo, ukryte testy, driver i skrypt rachunku na etap, żebyś mógł puścić obie paczki na własnej funkcji, zanim stracisz dzień na migrację.
AIDive