Przejdź do głównej zawartości

Generowanie dokumentacji z Codex

Twój projekt rozrósł się z weekendowego prototypu do 12-serwisowego systemu produkcyjnego. Jedyna dokumentacja to README sprzed ośmiu miesięcy, które odwołuje się do endpointu API, który już nie istnieje. Nowi pracownicy spędzają pierwszy tydzień czytając kod źródłowy, żeby zrozumieć, co co robi. Możesz zablokować dwa sprinty na push dokumentacyjny. Albo możesz zlecić Codex wygenerowanie dokładnej dokumentacji z rzeczywistej bazy kodu i skonfigurować automatyzacje, które będą ją utrzymywać w aktualności.

  • Prompty do generowania dokumentacji API, przewodników architektonicznych i dokumentacji onboardingowej z kodu źródłowego
  • Workflow z worktree do generowania dokumentacji bez ruszania katalogu roboczego
  • Przepisy na automatyzacje cotygodniowych kontroli świeżości dokumentacji
  • Techniki synchronizacji dokumentacji ze zmianami w kodzie z wykorzystaniem konwencji AGENTS.md

Dokumentacja API ma najwyższą wartość, ponieważ ma bezpośredni, mierzalny wpływ na produktywność deweloperów. Użyj CLI do szybkiego przebiegu generowania lub App do iteracyjnego dopracowywania.

Uruchom to w wątku Worktree, aby wygenerowany plik nie trafił do twojego katalogu roboczego, dopóki go nie przejrzysz. Po przejrzeniu diffa w panelu recenzji App, zsynchronizuj lokalnie lub utwórz branch i otwórz PR.

Dokumentacja architektury starzeje się najszybciej, ponieważ opisuje relacje między komponentami, a te relacje zmieniają się co sprint. Pozwól Codex generować je z rzeczywistego kodu, nie z pamięci.

Dla kodu, który jest wystarczająco złożony, aby wymagać wyjaśnienia, wygeneruj komentarze JSDoc/TSDoc i opisy na poziomie modułów:

Krok 4: Aktualizuj dokumentację za pomocą rozszerzenia IDE

Dział zatytułowany „Krok 4: Aktualizuj dokumentację za pomocą rozszerzenia IDE”

Rozszerzenie IDE jest najlepsze do ukierunkowanych aktualizacji dokumentacji, gdy już pracujesz w kodzie. Przy włączonym auto-kontekście Codex widzi pliki, które masz otwarte i może aktualizować dokumentację na podstawie tego, co właśnie zmieniłeś.

Po zaimplementowaniu nowej funkcji:

Krok 5: Zautomatyzuj kontrole świeżości dokumentacji

Dział zatytułowany „Krok 5: Zautomatyzuj kontrole świeżości dokumentacji”

Prawdziwa siła tkwi w automatyzacji. Skonfiguruj cotygodniową automatyzację, która sprawdza, czy dokumentacja odpowiada bazie kodu:

Ta automatyzacja działa w dedykowanym worktree, więc nigdy nie dotyka twojego katalogu roboczego. Wyniki pojawiają się w skrzynce automatyzacji. Jeśli aktualizacje były potrzebne, zobaczysz diff do przejrzenia.

Do dokumentacji wydaniowej Codex może generować changelogi z historii git. Sprawdza się to dobrze jako zadanie w chmurze, ponieważ korzysta z odczytu pełnej historii commitów.

Wygenerowana dokumentacja opisuje co kod robi, nie dlaczego. Codex czyta implementację i opisuje ją dokładnie, ale nie potrafi wyjaśnić kontekstu biznesowego ani historycznych decyzji. Dodaj komentarze w kodzie wyjaśniające “dlaczego” (nie “co”), a Codex je uwzględni. Alternatywnie podaj kontekst w prompcie: “System ponownych prób webhooków został zaprojektowany pod kątem ostatecznej spójności z systemami partnerów, które mają okna dostawy do 72 godzin.”

Dokumentacja API starzeje się w ciągu tygodnia. Wygenerowana dokumentacja jest aktualna tylko do momentu ostatniego generowania. Przepis na automatyzację z kroku 5 to wyłapuje, ale działa tylko jeśli automatyzacja jest uruchamiana regularnie i faktycznie przeglądasz wyniki. Przypnij automatyzację w Codex App, aby nie została zarchiwizowana.

Linki w dokumentacji się psują. Jeśli generujesz dokumentację ze względnymi linkami do plików źródłowych, a potem przeniesiesz te pliki, linki się po cichu zepsują. Dodaj “verify that all file path references in the documentation point to files that actually exist” do promptu kontroli świeżości.

Codex nadpisuje ręczną dokumentację. Jeśli twoja dokumentacja zawiera ręcznie napisane wyjaśnienia obok wygenerowanych sekcji, Codex może nadpisać ręczne części. Użyj wyraźnych znaczników sekcji: <!-- Generated by Codex - do not edit below this line --> i powiedz Codex: “Only modify content between the generated section markers. Do not touch manually written sections.”