Doorgaan naar de hoofdinhoud

Ontwikkelaarsgids

💡TL;DR
Begin op een aparte branch, installeer vergrendelde afhankelijkheden en beide browserrevisies, bouw en voer de volledige Jest-suite uit. Wijzig de eigenaar van het contract en houd documentatie, providertests en native bewijs in overeenstemming.

Werkende checkout​

Clone de repository, lees AGENTS.md en maak een featurebranch. Plug-in-CI gebruikt Node 20 op Linux/Windows; de site Node 24. Installeer afhankelijkheden apart in root en website/.

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 twee Playwright-pakketten kunnen verschillende Chromium-revisies gebruiken. Eén installatie is onvoldoende voor een schone omgeving. main.js wordt gegenereerd en niet gevolgd door Git; een oude bundel bewijst geen nieuwe commit.

Zoek de eigenaar​

VerantwoordelijkheidPrimaire bron
Levenscyclus, opdrachten en hostrouteringsrc/main.ts
Providerprofielen, protocollen en validatiesrc/llmProviders.ts
Aanvragen, transport, herhalingen en streamssrc/llmUtils.ts
Operaties, schema’s en publieke CLI-selectiesrc/operations/, src/cliContracts.ts
Bestandstaken, onderzoek en vertalingsrc/fileUtils.ts, src/searchUtils.ts, src/translate.ts
Workflowacties en zijbalksrc/workflowButtons.ts, src/ui/NotemdSidebarView.ts
Diagramspecificaties en renderingsrc/diagram/, src/rendering/
UI-strings en ondersteunde talensrc/i18n/
Publieke gidsen en vertalingenwebsite/docs/, website/i18n/
Beheerprocedures en gedateerd bewijsdocs/maintainer/

De productiebundel is zelfstandig en bevat de inline previewhost. Een kandidaatpad voor een afzonderlijke host is geen geleverd assetcontract. Activeren vereist gelijktijdige aanpassing van verpakking, assets, audits en documentatie.

Begrensde wijziging​

  1. Reproduceer en schrijf eerst een gerichte falende test.
  2. Wijzig de module die de invariant bezit; valideer externe invoer aan de grens.
  3. Draai gerichte en volledige tests, met annulering, fouten en persistentie waar relevant.
  4. Werk Engelse bron en geraakte locales bij. Plannen, taken en walkthroughs vereisen afzonderlijke volledige Engelse/Chinese documenten in docs/.
  5. Test visuele/native wijzigingen in de echte consument; XML, screenshot of build bewijst geen bewerkbaarheid of connectorbevestiging.

Voeg providers toe aan llmProviders.ts, hergebruik compatibel transport en actualiseer llmProviders.test.ts, llmUtilsProviderSupport.test.ts, README en verbindingstests. Behoud streaming en onderbroken antwoorden. Definieer voor operaties schema’s, context, effecten en handling tags vóór publicatie; een registeritem wordt niet vanzelf een publieke Agent-API. Agent-gids.

Verifiëren​

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 vergelijkt individuele meldingen. Een lager totaal rechtvaardigt geen nieuwe fout. Gebruik npm run benchmark:local-kb bij wijzigingen in ophalen en vermeld corpus en omgeving. Voor de site, met Node 24:

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

Codex schrijft en beoordeelt vertalingen direct voor het 1.9.9-programma. Gebruik geen oude vertaalschrijfscripts of LM Studio-/vertaalendpoints. Gereedschap mag de geschreven tekst formatteren, valideren en renderen.

Obsidian en native toepassingen​

Gebruik een wegwerpkluis met .notemd-host-verification; de scripts verifiëren de gekopieerde bundel. Houd echte gebruikerskluizen apart. Probeer obsidian help en obsidian-cli help voor CLI-controle en registreer ontbrekende tools als niet beschikbaar.

PowerPoint, CircuitikZ en dia-export hebben eigen voorwaarden en bestanden. Volg het gedateerde verslag en de releaseprocedure. Houd ongeteste mobiele/minimumversies expliciet.

Bijdragen en uitgeven​

Een PR benoemt probleem, uiteindelijke werking, tests en beperkingen. Gebruik Issues voor reproduceerbare meldingen. Commit geen sleutels, privénotities of ongerelateerde uitvoer. De publisher beheert versiecoherentie, numerieke tag, schone bron, tweetalige notes, gecontroleerde draftassets, publicatie en expliciete Pages-deploy. Verplaats geen publieke tag. .trellis/ is lokale werkstatus, geen CI-afhankelijkheid.

Verder​