Skifte til hovedindhold

Udviklerguide

💡TL;DR
Arbejd på en featuregren, installer låste afhængigheder og begge browserrevisioner, byg og kør hele Jest-suiten. Ændr kontraktens eksisterende ejer, og hold dokumentation, udbydertests og native forbrugerevidens samlet.

Arbejdskopi​

Klon projektet, og læs AGENTS.md. Plugin-CI bruger Linux/Windows Node 20; webstedet bruger Node 24. Rod og website/ installerer afhængigheder separat.

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

De to Playwright-pakker kan kræve forskellige Chromium-revisioner; én installation er ikke nok. main.js genereres og er gitignored. En gammel lokal bundle verificerer ikke en ny commit.

Find ejeren​

AnsvarPrimær kilde
Livscyklus, kommandoer og værtsroutingsrc/main.ts
Udbyderprofiler, protokolmetadata og valideringsrc/llmProviders.ts
Anmodninger, transporter, gentagelser og streamingsrc/llmUtils.ts
Operationer, skemaer og offentligt CLI-udvalgsrc/operations/, src/cliContracts.ts
Filopgaver, research og oversættelsesrc/fileUtils.ts, src/searchUtils.ts, src/translate.ts
Arbejdsgangshandlinger og sidepanelsrc/workflowButtons.ts, src/ui/NotemdSidebarView.ts
Diagramspecifikationer og renderingsrc/diagram/, src/rendering/
UI-tekster og sprogversionersrc/i18n/
Offentlige vejledninger og oversættelserwebsite/docs/, website/i18n/
Vedligeholdelsesrutiner og dateret evidensdocs/maintainer/

Produktionsbundlen er selvstændig med indbygget preview-vært. En mulig separat værtsti er ikke en leveret assetkontrakt. Aktivering kræver koordinerede ændringer i pakning, assets, audits og dokumentation.

Afgrænsede ændringer​

  1. Reproducér, og skriv en målrettet fejlslagen test først.
  2. Ret invariantens ejer, og validér ved den eksterne grænse.
  3. Kør målrettede/fulde tests; bevar annullering, fejl og persistens ved skrivning.
  4. Opdatér engelsk kilde og berørte sprog. Planer, opgaver og gennemgange kræver fulde, separate engelske/kinesiske versioner under docs/.
  5. Kontrollér visuelle/native ændringer i den faktiske forbruger; XML, billede eller build beviser ikke redigerbarhed eller fastgjorte forbindelser.

Tilføj udbydere i llmProviders.ts, genbrug kompatibel transport, og udvid llmProviders.test.ts, llmUtilsProviderSupport.test.ts, README og forbindelsestests. Bevar streaming og afbrudte svar. Eksponerede operationer kræver input-/resultatskemaer, kontekst, sideeffekter og håndteringstags. En registerpost giver ikke et offentligt Agent-endpoint. Agenter.

Verifikation​

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 sammenligner individuelle diagnoser; lavere samlet antal undskylder ikke nye regressioner. Ved ændret hentning: kør npm run benchmark:local-kb, og angiv korpus/miljø. Til webstedet med Node 24:

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

Oversættelser i 1.9.9-programmet skrives og gennemgås direkte af Codex. Kør ikke ældre oversættelsesskripter, LM Studio eller oversættelsesendpoints. Værktøjer må formatere, validere og rendere forfattet tekst.

Obsidian og native forbrugere​

Brug en engangsvault med .notemd-host-verification; scripts kontrollerer den kopierede bundle. Hold brugervaults udenfor. Prøv både obsidian help og obsidian-cli help; et manglende værktøj er utilgængeligt, ikke en bestået værtstest.

PowerPoint, CircuitikZ og slides har egne forudsætninger/artefakter. Følg dateret accept og releaserutinen. Angiv utestede mobiler og minimumsversion.

Bidrag og release​

Beskriv problem, slutadfærd, tests og grænser i PR. Giv reproduktion i Issues. Commit ikke nøgler, private noter eller uvedkommende output. Én publisher ejer versionssynkronisering, numerisk tag, ren tagget kilde, tosprogede noter, verificerede draft-assets, publicering og eksplicit Pages-deploy. Flyt ikke publicerede tags. .trellis/ er lokal arbejdsgangstilstand, ikke en CI-afhængighed.

Næste trin​