Przejdź do głównej treści

Przewodnik dewelopera

💡TL;DR
Pracuj w osobnej gałęzi, zainstaluj przypięte zależności i obie wersje przeglądarki, zbuduj projekt i uruchom pełny Jest. Zmieniaj obecnego właściciela kontraktu oraz utrzymuj spójne instrukcje, testy dostawców i dowody z aplikacji docelowych.

Kopia robocza​

Sklonuj repozytorium i przeczytaj AGENTS.md. CI wtyczki używa Linux/Windows Node 20; witryna Node 24. Katalog główny i website/ instalują zależności oddzielnie.

npm ci
npx --no-install playwright install --with-deps chromium
node node_modules/playwright-chromium/cli.js install chromium
npm run build
npm test -- --runInBand

Pakiety Playwright mogą wymagać różnych rewizji Chromium; jedna instalacja nie wystarcza. main.js jest generowany i ignorowany przez Git. Starszy lokalny bundle nie weryfikuje nowego commita.

Znajdź właściciela​

OdpowiedzialnośćGłówne źródło
Cykl życia, polecenia i integracja z hostemsrc/main.ts
Profile dostawców, metadane protokołu i walidacjasrc/llmProviders.ts
Żądania, transporty, ponowienia i strumieniesrc/llmUtils.ts
Operacje, schematy i publiczny wybór CLIsrc/operations/, src/cliContracts.ts
Zadania plikowe, badanie i tłumaczeniesrc/fileUtils.ts, src/searchUtils.ts, src/translate.ts
Działania przepływów i panel bocznysrc/workflowButtons.ts, src/ui/NotemdSidebarView.ts
Specyfikacje diagramów i renderowaniesrc/diagram/, src/rendering/
Teksty UI i językisrc/i18n/
Publiczne przewodniki i tłumaczeniawebsite/docs/, website/i18n/
Instrukcje utrzymania i datowane dowodydocs/maintainer/

Produkcyjny bundle jest samowystarczalny i zawiera host podglądu. Rozważana osobna ścieżka hosta nie jest opublikowanym kontraktem zasobów. Jej włączenie wymaga wspólnej zmiany pakowania, plików, audytów i instrukcji.

Ograniczona zmiana​

  1. Odtwórz problem i najpierw napisz ukierunkowany test, który zawodzi.
  2. Zmień właściciela niezmiennika, waliduj na granicy zewnętrznej.
  3. Uruchom testy celowane i pełne; przy zapisach zachowaj anulowanie, błędy i trwałość.
  4. Uaktualnij angielski tekst źródłowy i odpowiednie wersje językowe. Plany, zadania i walkthrough wymagają pełnych osobnych wersji angielskiej/chińskiej w docs/.
  5. Sprawdź wizualne/natywne zmiany w rzeczywistej aplikacji; XML, zrzut lub build nie dowodzi edytowalności ani zakotwiczenia łączników.

Dodaj dostawcę w llmProviders.ts, wykorzystaj zgodny transport i uzupełnij llmProviders.test.ts, llmUtilsProviderSupport.test.ts, README oraz testy połączenia. Zachowaj strumienie i przerwane odpowiedzi. Udostępnienie operacji wymaga schematów wejścia/wyniku, kontekstu, skutków ubocznych i tagów obsługi danych. Wpis rejestru nie oznacza publicznego endpointu agenta. Agenci.

Weryfikacja​

npm run build
npm test -- --runInBand
npm run audit:i18n-ui
npm run audit:render-host
npm run lint:regressions -- --base-ref origin/main
git diff --check

Lint porównuje pojedyncze diagnozy; mniejsza suma nie usprawiedliwia nowych regresji. Zmieniając wyszukiwanie, uruchom npm run benchmark:local-kb i opisz korpus/środowisko. Dla witryny z Node 24:

npm --prefix website ci
npm --prefix website run build
npm --prefix website run audit:build
npm run docs:build

W programie 1.9.9 Codex pisze i przegląda tłumaczenia bezpośrednio. Nie uruchamiaj starszych skryptów tłumaczących, LM Studio ani endpointów tłumaczeń. Narzędzia mogą formatować, walidować i renderować już napisany tekst.

Obsidian i aplikacje natywne​

Użyj jednorazowego skarbca z .notemd-host-verification; skrypty kontrolują skopiowany bundle. Skarbce użytkownika pozostają oddzielone. Spróbuj obu poleceń obsidian help i obsidian-cli help; brak narzędzia oznacza niedostępność, nie udany test hosta.

PowerPoint, CircuitikZ i slajdy mają własne wymagania i artefakty. Stosuj datowaną akceptację oraz instrukcję publikacji. Zaznacz niezweryfikowane urządzenia mobilne i minimalną wersję.

Wkład i wydanie​

W PR opisz problem, końcowe zachowanie, testy i ograniczenia. Do Issues dołącz reprodukcję. Nie commituj kluczy, prywatnych notatek ani niepowiązanych wyników. Jeden proces publikacji odpowiada za wersje, liczbowy tag, czyste otagowane źródło, dwujęzyczne informacje, sprawdzone zasoby draftu, publikację i jawne wdrożenie Pages. Nie przesuwaj opublikowanego tagu. .trellis/ to lokalny stan pracy, nie zależność CI.

Dalej​