{"_id":"@bytetrue/pi-vendor","_rev":"17-528270a34c473810e99ea56eea560d5b","name":"@bytetrue/pi-vendor","dist-tags":{"latest":"0.5.0"},"versions":{"0.1.0":{"name":"@bytetrue/pi-vendor","version":"0.1.0","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.1.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"1f1823aff2fb60a38dda546cedbceab8dfebe870","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.1.0.tgz","fileCount":11,"integrity":"sha512-/gsbolxAJAxBQdLn7lVjtMfGReVJbhbwVZzmt/k4sko6MczNgUfwQl1bFDr3kxIRyUqisl55zNLLQGXjLyGwQw==","signatures":[{"sig":"MEYCIQDJlTBjFRuwTnSxB6yRJK2jXkk6t3kbUsJkMiEab/VKcgIhANUdB1J1wr1IuI8CRCq7UFF2gUx3UsnHfBbYGuEg0dCy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52016},"type":"module","gitHead":"ff7e26504aa79c0e6c6313c1930b13cc91dbe4a4","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"bytetrue","email":"bytetrue@outlook.com"},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"11.17.0","description":"Pi extension: wizard for managing custom providers in ~/.pi/agent/models.json.","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.1.0_1782152132459_0.47711905575922064","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@bytetrue/pi-vendor","version":"0.1.1","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.1.1","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"ff22824d9c968586f7d9afce97806d035d7ed689","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.1.1.tgz","fileCount":11,"integrity":"sha512-9q7Q3g4CcfPGwSZn/c0YOtuowLLdmCqLLVpVIoj4ZYxfUPyWGPwHPeiNdhoz+ruy78VtC4RNh6JFak5fZmI4FQ==","signatures":[{"sig":"MEUCIHmY3EzQmu//tof6ybLxS7zTCiMskoXAY1IbdywkSIsWAiEA5I7JjTwozoE0Ke9iZ+7Q117icNBcAGuRD2danT84CyQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52100},"type":"module","gitHead":"cda60e79b2f4003feec5664c0e501f18df771774","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"11.17.0","description":"Pi extension: wizard for managing custom providers in ~/.pi/agent/models.json.","directories":{},"_nodeVersion":"24.16.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.1.1_1782210656901_0.5502634900639329","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@bytetrue/pi-vendor","version":"0.2.0","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.2.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"65281b24c8eacde6b7174080fa65e3ceb7ce4f22","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.2.0.tgz","fileCount":49,"integrity":"sha512-+aoxCs8j1mfrypNFKLUgfRdnrIGMxXQ5WKwwBILA3BdWZRISwCXsB0tLkNZq0P5l0G+bTUr/Mj9+IP1JXQZ/+Q==","signatures":[{"sig":"MEQCIDZSWB53nZ5jTWsAdg1FghYADIJtdwFKCqw+X1yhXoTrAiBELhZLYMGV9k/PsCsxfrrJEvILlu8RfBYHX8sM5qe+4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":433894},"type":"module","gitHead":"b352329607c37912edad32b17cb50424cdd2781c","scripts":{"test":"vitest run","dev:web":"node scripts/dev-web.mjs","prepack":"npm run build:web","build:web":"node src/web/build.mjs","typecheck":"tsc --noEmit","pack-smoke":"node scripts/pack-smoke.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.1","description":"Pi extension: wizard for managing custom providers in ~/.pi/agent/models.json.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","esbuild":"^0.27.7","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.2.0_1784296447793_0.9443613271301095","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@bytetrue/pi-vendor","version":"0.2.1","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.2.1","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"fd5bf5c7cbded01cd53f484639bdbc5828134763","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.2.1.tgz","fileCount":49,"integrity":"sha512-BlSw5uEDYL8u6cZ0IEo1bh4mHgobIkJz2f0THEwQrw4SJDUHu7U/FE39L9JCD9SqPz4gO+hITmXHxp/JdP3VUg==","signatures":[{"sig":"MEYCIQCzQPqPZq5HDGzHn/qx0Kp9Saj+ef3OXOGokxmisKBwEAIhANN9qTiYYxQrOapOxbXpM+O/ua2+c2DBHUbx+yFoP7op","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":434099},"type":"module","gitHead":"5b4ec367bca9abebcc2090ce52d7b1cd6da48a1a","scripts":{"test":"vitest run","dev:web":"node scripts/dev-web.mjs","prepack":"npm run build:web","build:web":"node src/web/build.mjs","typecheck":"tsc --noEmit","pack-smoke":"node scripts/pack-smoke.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.1","description":"Pi extension: wizard for managing custom providers in ~/.pi/agent/models.json.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","esbuild":"^0.27.7","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.2.1_1784345196102_0.46804437947201616","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@bytetrue/pi-vendor","version":"0.2.2","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.2.2","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"extensions":["./src/index.ts"]},"dist":{"shasum":"65c7ef529f17728b5e2db8a49eada78745c36425","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.2.2.tgz","fileCount":49,"integrity":"sha512-VKhW2a2KJ5zkpU4hLKWMWr3VDrTLC+EgR+z5kDT2vV/QuS0AqAu3D/XFO9a8WEzf9HlSM/T257nxXqzdiX1vxQ==","signatures":[{"sig":"MEUCIQDtkDN9AWj/U3DBbaQa6U6MXEht60QImWvD/+6/4DisrAIgCq54JG+hDEIzKBtE+qWlf9ye839KXZ02KACspq9Qyg4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":435318},"type":"module","gitHead":"93e8699eb44f63025ad7cf0c8447f716062e3193","scripts":{"test":"vitest run","dev:web":"node scripts/dev-web.mjs","prepack":"npm run build:web","build:web":"node src/web/build.mjs","typecheck":"tsc --noEmit","pack-smoke":"node scripts/pack-smoke.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.1","description":"Pi extension: wizard for managing custom providers in ~/.pi/agent/models.json.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","esbuild":"^0.27.7","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.2.2_1784461708846_0.5328286976096857","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@bytetrue/pi-vendor","version":"0.3.0","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.3.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"skills":["./skills"],"extensions":["./src/index.ts"]},"dist":{"shasum":"9774377fbe155a4333b1dee95a7cd6ab5127cb90","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.3.0.tgz","fileCount":25,"integrity":"sha512-l/I60XUqfL6+/5lssmihe5ulxDaGI1A/OcHsdc5o04gEDGoEbBSON4U8gnPNIO3RDnicts90AwefzZOntxnSgg==","signatures":[{"sig":"MEUCIFHYjNJASqtd5opXTgSeGDMiZlC92MAsTadBQ7KASL86AiEAllkCO5NNN+8mt3EAnZV6YFNja07rz3MqcQmUeo4FkR8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":131811},"type":"module","gitHead":"cdc55f4bcaa821cc5a30dbb02600cbbc21dfe389","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.2","description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.3.0_1785519068786_0.5209802409840616","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@bytetrue/pi-vendor","version":"0.3.1","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.3.1","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"skills":["./skills"],"extensions":["./src/index.ts"]},"dist":{"shasum":"683bb4cbe219850d20ca12f661f65dcaad499a24","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.3.1.tgz","fileCount":26,"integrity":"sha512-WuzPOu9ic/tGqytN3si2VHGGxbTOOI76jmbsOK/2/mF/kF6j9CYi6KyDubUNYc5IeJFCZmGDOT30hWKfUkLmeg==","signatures":[{"sig":"MEUCIQCzO7hAR5BNSJuzhiXBnEauX7DFAaAzrMbh9ZCBkiTutQIgXvu9HPftS+syt8QJBRf6XpPm8dMoQniuq0+jlzYuPoM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":138133},"type":"module","gitHead":"4a1ca39dada25bd4fcaeac9d8d738a4124aa9e63","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.2","description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.3.1_1785954560527_0.266472254184982","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@bytetrue/pi-vendor","version":"0.3.2","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.3.2","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"skills":["./skills"],"extensions":["./src/index.ts"]},"dist":{"shasum":"bbdc90876c51b05d64fceb7f809141b12bb84bef","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.3.2.tgz","fileCount":23,"integrity":"sha512-HinF6XNEQpc8NoG3u4tVqiE8n/V8An1St4/zmomzawhEUPXeSLIYDrR4wE6/Pym2snDSRwqlV+Gu9GdVuqCstQ==","signatures":[{"sig":"MEQCIEGIC9UJndmV4vzV1UAd+vMGcXnd1P0ZjiWur4wpSpKvAiB1D1l8JDz9do99JnaxkX2GHleIZ4skbgnQ+omwEFqdIQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":116776},"type":"module","gitHead":"2e8d31687f2efddde450cb473f44a95d97db86bc","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.2","description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","directories":{},"_nodeVersion":"24.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.3.2_1786461867929_0.5234912574376931","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@bytetrue/pi-vendor","version":"0.3.3","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.3.3","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"skills":["./skills"],"extensions":["./src/index.ts"]},"dist":{"shasum":"558159cfedcd5d028fc0b1431fb8d4d3a56fac5c","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.3.3.tgz","fileCount":24,"integrity":"sha512-GGkErICB0n5spMMcEpOxwfh1jUAvGXVIWbIB3nRVBdBGtUt+js2nYfn3TutSvhwUW4TvGb/eV8K7vWGTFHma+A==","signatures":[{"sig":"MEUCIQDXfBeiXuspHYUIti0/SiPOzOb5cRnCyyRsY9S/kW61qwIgbI0t5Ed/ezMnokH4IZRmJu/roQwFuIJSw+AInOKfd20=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.3.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":186420},"type":"module","gitHead":"7e07cf8667e821a1a4d18845e11d9ecd9f82e431","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.2","description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.3.3_1786723533330_0.08020957008394114","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@bytetrue/pi-vendor","version":"0.3.4","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.3.4","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"skills":["./skills"],"extensions":["./src/index.ts"]},"dist":{"shasum":"4a7adda42fd9f1cc107ffa1eb7c4209849c20532","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.3.4.tgz","fileCount":24,"integrity":"sha512-TuZsIgG6IUGN9FW9QcYDidhq6Sx2xl0K1s9dpw2Fweo4nX091O2ojFi/YXLXbbgHOQUiHdmznJSacSpOl+azSA==","signatures":[{"sig":"MEQCIH6UJptj8iyb08LEuI7yxWpiK/kPB/U4IATDLWotdXglAiARJC8zhQBPT4y8NVurcNaxVqkPBaiKw1HcHWpAh2WOvw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.3.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":188025},"type":"module","gitHead":"c830e2d66f1df88360b8819023f187856fe94c3c","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.2","description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.3.4_1787585055208_0.6142864559656662","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"@bytetrue/pi-vendor","version":"0.3.5","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.3.5","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"skills":["./skills"],"extensions":["./src/index.ts"]},"dist":{"shasum":"ab25d03ba474a90103ff976d8b390d04e05ad827","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.3.5.tgz","fileCount":23,"integrity":"sha512-FcV6bDpPCXozQGRgzZpB1Zkgnutbd1ar50yeTSI71ds5MQwJgZEh22cVQIa+7sXO16RA3yxbcTfXPh+0HTjwVw==","signatures":[{"sig":"MEYCIQC0L5cfNO2tFCamDu/BecM+6DCApyAcQjyqUYb4cj7CKwIhAM9mj631Np2InsUjRXXi0tkz2ZJdhFbNE5BvS9E7G+6b","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDhQtterD7mQVjtmzLdKjCx7fHDds+fzX9tUJHF3CqH8AiEAsXk85KG7PD7ZpQmmptbbByRBWcBn+/AP+IlJNrVs1WM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.3.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":181255},"type":"module","gitHead":"a1ad3c603e61ce2c5cf9a30a633c7056ba252601","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.2","description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","directories":{},"_nodeVersion":"24.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.3.5_1787933663269_0.8298680254558113","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"@bytetrue/pi-vendor","version":"0.3.6","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.3.6","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"skills":["./skills"],"extensions":["./src/index.ts"]},"dist":{"shasum":"e1514c54d1b197dc45b9fea47778341f55e1db13","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.3.6.tgz","fileCount":23,"integrity":"sha512-BVo++/xE2mD7Zv48KgjW0aZnEEphfUtLKadf2IGippXV4xGecLYHlqui2n8y5JawO3DQTzONpTb423RXs83qkA==","signatures":[{"sig":"MEYCIQDXJ4aTQ5Q8busuj2N1fhVQrWtocIQMIKUtHF7VrNbBXQIhAKLiCHKcmUtYBWWcp38kgBku+5/Wxxi1i+5Zmc3iykPJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICJluxjJ0+jQDayps7emWBjqGC3j6KM2LSK5mtAPglEpAiB+gZ9lKNP26IM1w1oeVep0qdfhd/n/JTtr0uborb6bGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.3.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":182346},"type":"module","gitHead":"a775f81cba64fdbf220de78e480c2798fe366169","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.2","description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.3.6_1788878194121_0.9706562822625386","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"@bytetrue/pi-vendor","version":"0.3.7","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.3.7","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"skills":["./skills"],"extensions":["./src/index.ts"]},"dist":{"shasum":"7dc9ee65a304feba30ce48bf60b7a2e71905724f","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.3.7.tgz","fileCount":23,"integrity":"sha512-nyKQmGkP8u+RmcuFbqLm5MeVuOV/tqzwEoxZZyo3CItdhbtzHgaIcDDuPXMpwghShNhwz3OhXphvcqtPc584ig==","signatures":[{"sig":"MEYCIQD5W61P7tAihpvhLApgY5TEkgIwe2z1OU5rXs1XJjh+SgIhAMeFmYd08izeL+WyXObWFf3NU+zi2DBgUprDRPBipDbn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEyIF06iU7NyQbFk3WazpLl28BWg3T2aMdRCFcsF8pK1AiEAkSMXYG+pKWUcK/f5R4pr747Uy1j9DS5yBqD0MfwP4jE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.3.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":183394},"type":"module","gitHead":"f14b828c59bf2a92bad79cdc6fccc18423e4a776","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.2","description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.3.7_1788926020403_0.6541089494876136","host":"s3://npm-registry-packages-npm-production"}},"0.3.8":{"name":"@bytetrue/pi-vendor","version":"0.3.8","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.3.8","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"skills":["./skills"],"extensions":["./src/index.ts"]},"dist":{"shasum":"c22f062da4914b5e812882779c6ed5a35df0ec47","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.3.8.tgz","fileCount":23,"integrity":"sha512-izww5YRTa9NnqSVSyqt7FzCELBGVaLLwcVmzb4+dZKoMH8z/PgqVNJayg0QT7Z4kRxWby3SojnUbzljVOZGHlA==","signatures":[{"sig":"MEUCIQD9L9DnHFJ5MZ+HXWLVHZB//3NJ/LIM0E+H44hosbXWMAIgdi380/N1dklvGnZMCvTuCZZ4emrVtRiOKCmJr/4wAaM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAbCl2nhIY7KnImCr34c4FHMYKjSEPZjVZSZxDiZTNMFAiEA9NuBGugLHX0+JzVhygjhWx+ITL2RaPIfR9zFHzGUtdM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.3.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185705},"type":"module","gitHead":"eb48ee751d50a561bf3bed08e2c4782a8a577569","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.2","description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.3.8_1788927908252_0.5410302540700167","host":"s3://npm-registry-packages-npm-production"}},"0.3.9":{"name":"@bytetrue/pi-vendor","version":"0.3.9","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.3.9","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"skills":["./skills"],"extensions":["./src/index.ts"]},"dist":{"shasum":"937428652472879cbaa800f85f2c0b5c08a3e260","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.3.9.tgz","fileCount":23,"integrity":"sha512-DlIooxbsfPDNiTq3J2aLWRYQmPYM3M5AaUvZACu15weWVRHu+V/OnZyX0nGKqETFwUmNaq3H7/pfjKJmepPGRQ==","signatures":[{"sig":"MEUCICkOYBA/S+jDJBK1qn+8k/0gDU7zM2i79zKCkVrwXdOpAiEAoaBwiHcfxue7kS8TZubmh+W56gsAlLbdDGOKHt/7TTM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDOTdwiHDbeFDXoKzrOC1ENaUqRNg8Z1dHhMJJXeaCC4AIhALZiQeMBLhaLoLE1cDAFRDJWIne9kt8rnzHdQ6GY+7h7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.3.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":186441},"type":"module","gitHead":"f6ca5dbccc2f88a2b8f36ebcc4461a95d7b92b87","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.2","description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.0","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.3.9_1789633801119_0.9725728868611339","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@bytetrue/pi-vendor","version":"0.4.0","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"author":{"name":"byte"},"license":"MIT","_id":"@bytetrue/pi-vendor@0.4.0","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"pi":{"skills":["./skills"],"extensions":["./src/index.ts"]},"dist":{"shasum":"e9ddc2553d3857b3db885aadb2cab451af6d740f","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.4.0.tgz","fileCount":23,"integrity":"sha512-c6s0VUGmGWxA+Vu3LLtLlOfB2eX6nYVvt3KxfpQSyQpSXu4ug+muE0lE/HQKMtsfL5wis03g3/TMLgeLqzsuFg==","signatures":[{"sig":"MEUCICGb9n1IWqdqWsOFqNt+JdTagM7YMmhmck73Dh6ZjiFcAiEAnL2zbGHFR/fTC6uwEya3M8xwy75k0PMpO6Zrgbmk/KI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGxcLeLXOzA7vs7JNhe2ZmU8Pb/pNn6rfIFcaisjwR2xAiA5nRt9xa8IaLE3gDWkrrdQza2nTiTcLy9r7TSTSWhCsg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":200556},"type":"module","gitHead":"4f287374a9ea314a2c6bbdb7734b5aab7049c1fc","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.0.2","description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"tmp":"tmp/pi-vendor_0.4.0_1789660141732_0.7603183767469817","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"pi":{"skills":["./skills"],"extensions":["./src/index.ts"]},"_id":"@bytetrue/pi-vendor@0.5.0","bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"dist":{"shasum":"62e4da27a14eb23d2e5273eb8e1f0d51a7ced330","tarball":"https://registry.npmjs.org/@bytetrue/pi-vendor/-/pi-vendor-0.5.0.tgz","fileCount":23,"integrity":"sha512-Ngr/pcsjLTiTZ4HzTXv1B2ic2N7fIBIbk7sF44iPaEK1mQYl0kqL74OMb7HWnsLWfQJbp8XZWit3gPg0D8a20Q==","signatures":[{"sig":"MEYCIQDr8kq/+A+m/SPuA37ufn4buI7++eMPQHDE5b+wJnZxTAIhAP0HCRILGFREJU2o2+fOpvLK5fPgmIywW2XaY8DVQigT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDA2SPvbodGTrXVN6eSp1qc38gSTyU0PcgBpTif9Zp1MwIgNMwqGYp3pG/pkB+yz96W4IFkXtX+JDlKfPmMbbDu5F0="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@bytetrue%2fpi-vendor@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":211216},"name":"@bytetrue/pi-vendor","type":"module","author":{"name":"byte"},"gitHead":"f6ab2edd173d91c1f8694564edfeea23dd9d25ff","license":"MIT","scripts":{"test":"vitest run","typecheck":"tsc --noEmit"},"version":"0.5.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:25d5b342-2a2b-420c-bd3e-05034eec22c7"}},"homepage":"https://github.com/ByteTrue/pi-package-mono#readme","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"_npmVersion":"12.1.0","description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","directories":{},"maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.11","typescript":"^5.0.0","@types/node":"^22.0.0"},"peerDependencies":{"@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":">=0.79.10"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-vendor_0.5.0_1790144558894_0.5663939065785013"}}},"time":{"created":"2026-06-22T18:15:32.318Z","modified":"2026-09-23T06:22:39.295Z","0.1.0":"2026-06-22T18:15:32.607Z","0.1.1":"2026-06-23T10:30:57.063Z","0.2.0":"2026-07-17T13:54:07.974Z","0.2.1":"2026-07-18T03:26:36.251Z","0.2.2":"2026-07-19T11:48:28.985Z","0.3.0":"2026-07-31T17:31:08.947Z","0.3.1":"2026-08-05T18:29:20.685Z","0.3.2":"2026-08-11T15:24:28.075Z","0.3.3":"2026-08-14T16:05:33.628Z","0.3.4":"2026-08-24T15:24:15.383Z","0.3.5":"2026-08-28T16:14:23.420Z","0.3.6":"2026-09-08T14:36:34.218Z","0.3.7":"2026-09-09T03:53:40.512Z","0.3.8":"2026-09-09T04:25:08.335Z","0.3.9":"2026-09-17T08:30:01.214Z","0.4.0":"2026-09-17T15:49:01.834Z","0.5.0":"2026-09-23T06:22:38.997Z"},"bugs":{"url":"https://github.com/ByteTrue/pi-package-mono/issues"},"author":{"name":"byte"},"license":"MIT","homepage":"https://github.com/ByteTrue/pi-package-mono#readme","keywords":["pi-package","pi-extension","models.json","provider","vendor","llm","agent"],"repository":{"url":"git+https://github.com/ByteTrue/pi-package-mono.git","type":"git","directory":"packages/pi-vendor"},"description":"AI-first Pi provider and model management with a bundled skill, script, and cold-start wizard.","maintainers":[{"name":"bytetrue","email":"bytetrue@outlook.com"}],"readme":"<p align=\"center\">\n  <img src=\"./docs/banner.webp\" alt=\"A secure routing board connecting model providers\" width=\"100%\">\n</p>\n\n<h1 align=\"center\">@bytetrue/pi-vendor</h1>\n\n<p align=\"center\">AI-first provider and model management for Pi's <code>models.json</code>.</p>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/@bytetrue/pi-vendor\"><img src=\"https://img.shields.io/npm/v/@bytetrue/pi-vendor?style=flat-square\" alt=\"npm version\"></a>\n</p>\n\nThe package uses an on-demand Skill for routine work and keeps `/vendor` as a small cold-start wizard for the moment when no usable model exists. It registers no permanent Agent tools.\n\n## Install\n\n```bash\npi install npm:@bytetrue/pi-vendor\n```\n\nRestart or reload Pi. Configuration lives at `$PI_CODING_AGENT_DIR/models.json`, or `~/.pi/agent/models.json` by default.\n\n## Ask Pi\n\nThe bundled `pi-vendor` Skill is discovered automatically. Ask naturally:\n\n- “Add Qwen 3.7 to provider `my-gateway`.”\n- “Discover the models exposed by `my-gateway`.”\n- “Synchronize `my-gateway` exactly with its upstream model list.”\n- “Update this provider's base URL without changing its API key.”\n- “Audit my Pi model configuration.”\n- “Remove model `old-model` from provider `local`.”\n\n\nThe Skill uses Pi's normal read/edit flow, so changes stay narrow and inspectable. It treats a user phrase such as “Qwen 3.7” as a fuzzy catalog request rather than blindly writing it as an ID. Provider capability questions use one aggregate `vendor.mjs discover <provider>` query without printing the full configuration. Exact synchronization runs Skill-owned fixed Node templates to generate and retain a machine-confirmed `{before, add, remove, after}` plan, assert it is not stale before editing, assert the final ID set after editing, and assert the final discovery union. Model IDs are never manually transcribed into the mutation plan. Every mutation must pass `pi --list-models --offline` before the Skill reports completion. Every model mutation then runs the `order` audit against a models.dev snapshot; a deviation or an unresolved release date exits nonzero and must be raised with the user before the Skill reports completion.\n\n> [!CAUTION]\n> When a working Agent is available, never paste an API key into chat. Let the Skill give you the bundled `vendor.mjs set-key` command, then run it yourself; terminal input is hidden and the key never enters argv or the assistant response. The cold-start `/vendor` key field is visible while typing, so do not use it while sharing or recording your terminal.\n\n## Cold-start setup\n\nRun `/vendor` when no working model is available or when you prefer a manual path:\n\n1. **Add provider** — provider key, base URL, API format, API key, and first model.\n2. **Add model** — choose an existing provider, then discover or enter a model id.\n\nEach run adds exactly one provider or model and exits. Use `←`/`→` to page model candidates and `↑`/`↓` to move. `Esc` cancels without writing.\n\nSuccessful saves are atomic, use file mode `0600`, refresh Pi's model registry, and report any runtime validation error.\n\n## On-demand helper\n\nThe Skill has exactly four AI-facing read-only queries:\n\n| Command | Purpose |\n|---|---|\n| `vendor.mjs catalog <keyword>` | Fuzzy-search credential-free official templates from the active Pi installation |\n| `vendor.mjs discover <provider>` | Probe every deduplicated effective route for the provider and group upstream model IDs by API type |\n| `vendor.mjs drift <provider> [official-provider,...]` | Compare a provider's configured models against the built-in official catalog templates and report per-field drift |\n| `vendor.mjs order <models.dev-snapshot-file> [provider,...]` | Audit every provider's configured `models` array against the agreed series/`release_date` order and report deviations from a models.dev snapshot |\n\n`vendor.mjs set-key <provider>` remains a separate user-terminal-only helper for private key entry. It is not an AI-facing query.\n\nDiscovery accepts only HTTP(S), rejects redirects and credential-bearing URLs, and applies fixed time/body limits. Route failures remain explicit instead of being interpreted as unsupported models; any intended route failure blocks destructive exact synchronization. A returned ID is positive upstream evidence; official catalog matches are metadata sources, not upstream capability evidence.\n\n## Safety boundaries\n\n`/vendor` and `set-key` use strict JSON handling and atomic `0600` writes. Their core operations reject stale revisions and identity conflicts instead of silently upserting or overwriting them.\n\nThe Skill uses Pi's normal read/edit tools rather than that transaction core. After every mutation it must run the active Pi executable's `--list-models --offline` path, inspect both streams for `errors loading models.json` (Pi can warn and still exit zero), and verify the intended model-list change. Exact synchronization uses the fixed templates in `SKILL.md`: an immutable plan file, a stale-before assertion, an after-set assertion, and a successful-discovery-union assertion. Routing or authentication changes require successful discovery for every intended route.\n\nAcross both paths:\n\n- official templates never copy credentials or routing fields into the target provider;\n- the target provider and template source remain separate choices;\n- there is no Web UI, background server, OAuth manager, or general mutation tool.\n\nAPI keys are stored as literals in `models.json`, matching Pi's native configuration. Keys containing Pi metacharacters are escaped before storage so Pi cannot expand or execute them.\n\n## Development\n\n```bash\nnpm --workspace @bytetrue/pi-vendor run typecheck\nnpm --workspace @bytetrue/pi-vendor test\nnpm --workspace @bytetrue/pi-vendor pack --dry-run\n```\n\nUse an isolated `PI_CODING_AGENT_DIR` for tests and smoke runs. They must never read or write the user's Pi configuration.\n\nRequires `@earendil-works/pi-coding-agent >=0.79.10`.\n","readmeFilename":"README.md"}