Jedno polecenie, na własnym komputerze, od razu
Ancient Code jest darmowy i otwarty. Czyta repozytorium, które mu wskażesz, i wypisuje, co znalazł. Bez konta, bez wysyłania czegokolwiek, bez instalowania na stałe, bez konfiguracji.
$ npx ancient-code . # pięć mierzonych pytań, na Twoim repozytorium $ npx ancient-code . --report # to samo jako strona do przesłania dalej
To dokładnie to polecenie, z którego wyszła każda liczba w czterech publicznych raportach na tej stronie. Szóste pytanie, kto trzyma klucze, odpowiada człowiek, a raport tak właśnie pisze, zamiast zgadywać z pewną miną.
Potrzebny Node 20 lub nowszy i pełny klon, bo wiek bierze się z historii gita. W płytkim klonie git datuje każdą linię na dzień pobrania, więc raport napisze, że wieku nie zmierzył, zamiast wypisać pewne zero.
Samo pytanie o rusztowanie
ancient-fences odpowiada na jedno z pięciu osobno i jest wbudowany w to pierwsze. Użyj go, jeśli to wszystko, czego chcesz.
$ npx ancient-fences . # co stoi w tym repozytorium $ npx ancient-fences . --check # i czy te powody wciąż istnieją $ npx ancient-fences . --tasks # martwe płoty jako zadania dla agenta
Twój kod nigdzie nie wychodzi. Jedyne żądanie sieciowe w obu narzędziach to pytanie publicznego trackera, czy zgłoszenie jest nadal otwarte, i tylko przy --check.
Najstarszy w źródłach webpacka, w całości: komentarz w lib/UseStrictPlugin.js tłumaczący, dlaczego kod usuwa "use strict", które potem i tak wstawi z powrotem, z odnośnikiem do zgłoszenia #1970 w samym webpacku. Tej linii nikt nie ruszył od lutego 2018. Nikt nie miał powodu, żeby na nią spojrzeć, i dokładnie dlatego nikt nie sprawdził, czy powód wciąż istnieje.
Oba projekty prowadzą świetni inżynierowie. I o to właśnie chodzi: to nie jest niedbalstwo, tylko ślepota, której nic na rynku nie koryguje.
Znaleziska w testach liczymy osobno i nigdy nie podajemy ich jako pracy do wykonania. Komentarz w teście z linkiem do zgłoszenia to zwykle test regresyjny na ten błąd, więc zamknięte zgłoszenie jest powodem, żeby taki test zostawić, a nie skasować. eslint ma ich 399 obok 43 w źródłach, a jedna wspólna liczba pokazałaby go dziesięć razy gorzej, niż jest naprawdę.
Skaner nie edytuje kodu. Wiedza o tym, że płot jest martwy, jest częścią rzadką, a narzędzie do usuwania ma dziś w edytorze każdy zespół. Dlatego wyniki wychodzą jako zadania dla agenta, z którego zespół już korzysta, a siatką bezpieczeństwa są testy.
Raporty publiczne są po angielsku, bo mierzone projekty też są.
Zależność narasta po jednej wycenie naraz
Nikt nie podpisuje się pod uzależnieniem od dostawcy. Ono przychodzi latami: system rośnie, ludzie, którzy go zbudowali, są jedynymi, którzy go rozumieją, aż pewnego dnia przychodzi wycena, która wydaje się zawyżona. Nie masz jak tego nazwać ani jak odejść.
Ta asymetria nie bierze się z nieuczciwości. Bierze się z pamięci. Dostawca pamięta wszystko, co dla Ciebie zbudował. Ty pamiętasz faktury. Ta różnica jest całym problemem i powiększa się z każdym rokiem.
Przychodzi wycena
90 godzin za moduł, który Twoim zdaniem był już dwa razy przerabiany. Potrzebujesz historii przed spotkaniem, nie po.
Kończy się umowa
Jedyny moment, w którym masz siłę. I jedyny, w którym potrzebujesz faktów zamiast przeczucia.
Rozważasz zmianę dostawcy
Zanim wycenisz nowego, musisz wiedzieć, ile realnie kosztuje przekazanie tego, co masz.
Ktoś kupuje Twoją firmę
Ich due diligence zada dokładnie te pytania. Lepiej, żebyś zadał je pierwszy.
Sześć pytań, pięć z nich zmierzonych
Każde jest faktem o Twoim repozytorium: maszyna potrafi go sprawdzić, a każdy może sprawdzić go ponownie. Żadne nie jest opinią o czyjejś pracy. Poniżej na repozytorium, które już znasz.
Przejmowalność
webpack/webpack · pomiar 2026-08-31
Ile osób rozumie każdą część?
Mierzone z historii autorstwa, nie z planu obsady.
Czy jest siatka bezpieczeństwa przy zmianach?
Testy i sprawdzenia automatyczne: czy zmiana w jednym miejscu zostanie złapana, zanim zepsuje coś w innym.
Ile z tego to rusztowanie, którego nikt nie usunął?
Obejścia, które stoją, choć problem, dla którego powstały, dawno naprawiono. Mierzy to Ancient Fences.
Czy da się go zbudować od zera?
To, co repozytorium deklaruje o swoim własnym łańcuchu narzędzi, zależnościach i krokach budowania.
Czy dokumentacja jest prawdziwa?
Czy nowy zespół, czytając ją, wdroży system, odtworzy kopię zapasową i wymieni sekret.
Kto trzyma klucze?
Domeny, serwery, certyfikaty, konta w sklepach z aplikacjami, dostępy do płatności.
Powyżej nie ma nic przykładowego. To jest wynik npx ancient-code . na pełnym klonie webpacka i zmienia się, kiedy zmienia się webpack. Werdykty są po angielsku, bo tak wypisuje je narzędzie. O to właśnie chodzi w mierzeniu zamiast oceniania: liczba się rusza, a Ty widzisz, które pytanie nią poruszyło.
To nie jest oskarżenie. To pamięć.
Ancient Code nigdy nie powie Ci, że cena jest nieuczciwa. Nikt nie zmierzy tego rzetelnie, bo większość pracy programisty to myślenie, a nie pisanie, i poprawka na trzy linijki potrafi legalnie kosztować czterdzieści godzin.
To, co robi, to oddanie Ci pamięci, którą dostawca już ma. Przestajesz zgadywać i zaczynasz zadawać właściwe pytanie.
webpack/webpack · cztery najruchliwsze obszary · ostatnie trzy lata
Zanim przyjmiesz wycenę, to jest historia obszaru, którego dotyczy.
To narzędzie liczy zmiany i osoby, nigdy godziny ani pieniądze: nie widzi faktury i nie udaje, że widzi. Daje Ci pytanie. Jeśli obszar był już dwa razy przebudowany przez jedną osobę, warto o tym wiedzieć przed przyjęciem kolejnej wyceny, a dostawca, który pracuje porządnie, odpowie na to jednym zdaniem zamiast w kłótni.
Dlaczego dobrzy dostawcy to lubią
Porządny software house przegrywa przetargi z tańszymi, którzy dowożą coś, co wygląda tak samo, a rozsypuje się po dwóch latach. To daje mu dowód: testy, dokumentację, uprzątnięte rusztowania.
To także on bez oporu podpisze zapis w umowie, bo już go spełnia.
Ramy umowy, nie proces
Najmocniejsze zastosowanie jest jednocześnie najmniej konfrontacyjne. Twoja umowa mówi, że dostajesz dokumentację i kod, który się buduje. Ancient Code pokazuje, czy tak jest, tak często, jak zechcesz go uruchomić.
To sprawdzenie czegoś, co obie strony podpisały, a nie ocena czyjegoś rzemiosła.
Repozytorium trzyma dostawca
To jest prawdziwa przeszkoda, więc powiedzmy to wprost. Są trzy drogi wejścia, uszeregowane według tego, jak dobrze działają:
Masz już dostęp
Częściej, niż się klientom wydaje. Jeśli kod leży na koncie Twojej firmy, albo umowa daje Ci kopię lub depozyt, nie trzeba niczego renegocjować. Wystarczy prawo odczytu. Ancient Code nigdy nie zapisuje.
Przy przedłużeniu umowy
Moment, w którym masz siłę. Zapis o dokumentacji, budowalności i przekazaniu kodu jest standardowy i tani do uzgodnienia, a dostawca, który odmawia, powiedział Ci właśnie coś wartościowego za darmo.
Jako wspólny panel
Zaproponowany obu stronom naraz, z dostawcą widzącym te same liczby co Ty. Wolniej się to ustawia i jest zdecydowanie najtrwalsze. Zmienia audyt we wspólny przyrząd.
Czym Ancient Code nie jest: nie monitoruje pojedynczych programistów, nie tworzy ich rankingów, nie liczy im godzin i nie czyta wiadomości. Patrzy na to, co zostało dostarczone, i w jakim jest stanie. Jednostką pomiaru jest kod, nigdy człowiek.
O co pytają najpierw
Czy to nie zepsuje relacji z dostawcą?
Zależy wyłącznie od tego, jak zostanie wprowadzone. Sprawdzenie zapisów umowy i gotowości do przekazania, dzielone z dostawcą, to zupełnie inna rozmowa niż tajny audyt. Każdy pomiar jest faktem o kodzie, a dostawca, który pracuje porządnie, wychodzi z tego lepiej niż wszedł, z dowodem, którego wcześniej nie umiał przedstawić.
Czy powie mi, że przepłacam?
Nie, a narzędzie, które twierdzi inaczej, sprzedaje Ci fałszywe oskarżenie. Powie Ci, za co już zapłaciłeś w obszarze, którego dotyczy wycena, jak duże były wcześniejsze zmiany i jak zmienił się stan systemu. Wniosek wyciągasz sam, mając fakty na stole.
Czy trzeba być technicznym, żeby to przeczytać?
Uruchomienie wymaga kogoś z terminalem i klonem kodu. Czytanie już nie: na wyjściu jest sześć zwykłych pytań z jedną linijką odpowiedzi każde, a --report zamienia to w stronę do przesłania osobie, która podpisuje faktury.
Ile to kosztuje?
Nic. Oba narzędzia są na licencji MIT i działają lokalnie, a za nimi nie chowa się żadna wersja płatna. Nic nie jest odłożone do wersji, którą trzeba kupić: polecenie z tej strony to cały pomiar.
Ile trwa samo uruchomienie?
Od sekund do minut, zależnie od wielkości historii. webpack, jedno z większych repozytoriów na tej stronie, schodzi poniżej minuty na pełnym klonie. Wolną częścią jest historia gita, nie sam skan.
A jeśli nasz system jest stary i zabałaganiony?
To jest dokładnie ten przypadek, dla którego to powstało. W dwuletnim projekcie nie ma czego szukać. Liczby robią się nieprzyjemne, a pieniądze prawdziwe, przy systemach dziesięcioletnich, które przeszły przez kilku dostawców.
Dowiedz się, ile kosztowałoby odejście, zanim będziesz musiał
Uruchom npx ancient-code . na dowolnym systemie, który masz albo umiesz sklonować. Pięć z sześciu pytań dostaje odpowiedź na Twoim komputerze, jednym poleceniem, na dowodach, które każdy może sprawdzić ponownie.
Szóste wymaga człowieka. To, kto trzyma domeny, serwery, certyfikaty i dostępy do płatności, jest pytaniem o Twoją organizację, a nie o repozytorium, i żaden skaner nie powinien udawać, że jest inaczej. Jeśli to jest rozmowa, której potrzebujesz przy systemie napisanym przez kogoś innego, napisz do mnie.
Wystarczy jedna linijka na hello@ancientcode.net. Bez formularza, bez newslettera, bez śledzenia na tej stronie.