{"_id":"pi-tokenrouter","_rev":"28-520f962b8a893bc4f28ebe3e68390dff","name":"pi-tokenrouter","dist-tags":{"latest":"1.5.0"},"versions":{"1.0.4":{"name":"pi-tokenrouter","version":"1.0.4","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.0.4","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"00bcd6aff9e0ca3da72364f88d858970e1b65330","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.0.4.tgz","fileCount":4,"integrity":"sha512-5lZ/N6ud97kjEC2TxF1JJrPWzwAFVIHzABwD/P/p8bPQKjNljFcMYIU73Rp9V0mleBXQnQJCeS90CW1K0SaPeA==","signatures":[{"sig":"MEUCIQCoKoHfoo/2S/QQaANZKE9kit0LFuKSJ0KsOwKjPw5Y/wIgZ0xh8/U/PPbY+GEy8Fnj80/eo0urAQz4iOh0m+4oqlQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.0.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":13463},"type":"module","gitHead":"aef226a3fbf25d7dc54c6fd7fcdac89ebf2a1d6f","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"11.13.0","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.0.4_1777380789235_0.028539065450126522","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"pi-tokenrouter","version":"1.0.5","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.0.5","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"f2496867a7cb66725c18ebc3717aa4feacad11f2","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.0.5.tgz","fileCount":6,"integrity":"sha512-GZoE5jxaFgBr+B6UjXPK+Ze/hqUye393eAlw+XBokH5l43qSBRfBHEKMhyQ2FUXj3SMf0CygrMMpUpzz1VPg4Q==","signatures":[{"sig":"MEQCIAxG2OJNbbyfjvOey4btjuJs4GYOz6o5PYdK1S2TZCFtAiBaJ8JOTA9GZg5Okrw6d2orpyInymi3vXMwz+eUCYFN6g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.0.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":28233},"type":"module","gitHead":"4bf7b9129c8d575c58faf960938ef7215ba670fa","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"11.14.0","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.22.2","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.0.5_1778124734826_0.6958784383353109","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"pi-tokenrouter","version":"1.0.6","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.0.6","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"2b4834e527c29851b7396352e22f2cad02c33dc6","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.0.6.tgz","fileCount":6,"integrity":"sha512-ap2V5sXOlNJzD2lFz0LBjMLS4d1lZjeBxE8LsN0FNp9Ab9mIezQM92tJnXDMTF/036cl/nbE4+snpuUahGFdbQ==","signatures":[{"sig":"MEUCIQCDz2JgQsRK9GHB5AY/Dz6tj4VKRpv6i1AtZYEijn1kLgIgaIfKlaDIb+nKwLXSxij0jYfZu0hxR9nS51zfHQe66Y4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.0.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29288},"type":"module","gitHead":"dbc66449cf1d4574743e7f24485c17e0b9672dd3","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"11.15.0","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.22.3","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.0.6_1779539737364_0.14014375707133198","host":"s3://npm-registry-packages-npm-production"}},"1.0.7":{"name":"pi-tokenrouter","version":"1.0.7","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.0.7","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"921c13ef60de8813a9c64a7b192627a41eb91b64","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.0.7.tgz","fileCount":6,"integrity":"sha512-VEotONhzamvU7X0eTLPw2QHKgWgZl+tQmGIup257P4nu6+JqTA7/qX7PraLDNwnq7LeP44GYEWx54vCGYM18Xw==","signatures":[{"sig":"MEQCIASc2miWQTHuVWJPmeemOlKrO8bUG3R5NYQ09muIKqzSAiAMCVrRtgMMS8GE6JuHTcJtEgvNPDOJTiOqisSuFM1SZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.0.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29288},"type":"module","gitHead":"767c28e95d2b17069437c816b56c494c0c93c9cb","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"11.16.0","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.22.3","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.0.7_1780046217451_0.6783644853005528","host":"s3://npm-registry-packages-npm-production"}},"1.0.8":{"name":"pi-tokenrouter","version":"1.0.8","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.0.8","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"50bba98915e19d0807fca1c117805623acd3697c","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.0.8.tgz","fileCount":6,"integrity":"sha512-uiB6uPnTm1kF4fvR5jhIZwCEVe1KlWRiY1saduSMLUwxtQmMRFtXyTMvGvrrRb7MbZ7eY8Iy9RBsOj4ZgpMGBw==","signatures":[{"sig":"MEUCIHnMoeSGEIgKcBp5lCYcFvM0wJgs0yb5EKOydAQpedSvAiEAj4240jSKd1EMW6lQ6OfWuE3uffQFUMav451QBA8CzY0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.0.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29290},"type":"module","gitHead":"b2da676383e638060604ca4b8078e5e74791a813","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"11.16.0","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.22.3","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.0.8_1780214381894_0.4098423949299552","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"pi-tokenrouter","version":"1.2.0","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.2.0","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"9a68b991c7347f1dc0c099f4ec69a590c27c2fe2","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.2.0.tgz","fileCount":6,"integrity":"sha512-ZdxfL8AGV7x6su/FKk0lL44RuGRtH1SLTp6IBSC8UuLYTWwucbNjHukf6Q3a72Fg44d87gxfDiGWAWFRg0APkw==","signatures":[{"sig":"MEUCICHcrbySISSGVQXAlhXu67UiFp8t7RqFr8A9xTFK03bLAiEA0z9tpeAovX9XoVbwsrP42AfjoQO0pVvNo+UH9zYjzMM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":29660},"type":"module","gitHead":"2f213371a4abd7e92f82f69c9e23e9017cc14f8e","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"11.16.0","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.22.3","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.2.0_1780231966132_0.25646323735774135","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"pi-tokenrouter","version":"1.2.1","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.2.1","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"ccc097c7822e463195b1f4d65183f641713725ee","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.2.1.tgz","fileCount":6,"integrity":"sha512-WX8VsjtmXbjrUIfrWbHynn6TEiacwEtH/HnPhMJQcuge8fgJa7y0yWBDKITS4LObkiIie0cHMzadIOMrpzGiiQ==","signatures":[{"sig":"MEUCIBgJbO5YS3K+uAVKNFBNqQ4nzqmguvk1q5IXjdw7eNekAiEAzppIbCM92/HiIkuFSbiDIiA5vnoB3g6zB9XRNhNZW/8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":38091},"type":"module","gitHead":"14a1bc158a0091025a8f9f9b2860a7824534cb64","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.1","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.2.1_1784431565827_0.3194982330993592","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"pi-tokenrouter","version":"1.2.2","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.2.2","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"98bf888cf0eabea72435d02420dd77abaacf1463","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.2.2.tgz","fileCount":6,"integrity":"sha512-9/69YiB6RiIdcbG8N8ceMBu/X3BOpQsL8aMvF8JTAtTxdVVVmNKc5Rb9VAByE/Jftbi7IO39Q3SZHPUpCyYuNw==","signatures":[{"sig":"MEUCIQC2kF2WczU0kg6vFMKGMKSoKbX+8GzKOM2wcVm8JEqE3QIgEGrOtFh+DjTBB3ZEzq4nlwV3MV9nmiDBYoXWF+sphjI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":38225},"type":"module","gitHead":"451d389125fc2e3ef858e64d85326a07e50cfddc","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.1","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.2.2_1784560881366_0.2423521111048319","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"pi-tokenrouter","version":"1.2.3","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.2.3","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"6b314e6cfc1aba50f6b7ab92bacb318039be5235","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.2.3.tgz","fileCount":6,"integrity":"sha512-UYJBHJTdL3gvLXScUT0P1/sLWrJMxnhc/eQvzipNSkqCPPj8EtMR08Kzd/jp0DPIDIeGMTUvV8dGMB9tZVBGYQ==","signatures":[{"sig":"MEUCIElTzwzAmoR3YJvsRUCjKETFSrY7m5xRWkiMgPSVn94XAiEAkndDkVZJXRfLK6X08RuRjc++OZnD4KtP9RPjQa3ODus=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.2.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":39662},"type":"module","gitHead":"9dccda8518e4b1e9bd73ea8983e86948176110e1","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.1","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.2.3_1785340626597_0.18014246921319743","host":"s3://npm-registry-packages-npm-production"}},"1.2.4":{"name":"pi-tokenrouter","version":"1.2.4","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.2.4","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"3f4a6adf2b16db8d9eb97c98d9731a329378f4a0","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.2.4.tgz","fileCount":6,"integrity":"sha512-hRi1Tl24ZVVVuBHslIlYkS8wROq6MV9Gqp3GvYisiMxSh1F8vHvAQ7T37IE94N/18ijpvbXnj6xGHLViHSUxZg==","signatures":[{"sig":"MEUCICnreDvo0KGMdKM/yeuAr0Lb3vejPV8gQObabV2Ban28AiEA/2KDmfy5FnJZYyQSUyLftkQjvtPQ0hFcUcKg7cac7K4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.2.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":40770},"type":"module","gitHead":"dfcc1731565faa02cb021a860efbbc6b9cb9dbdf","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.2.4_1785829820722_0.4204015062443749","host":"s3://npm-registry-packages-npm-production"}},"1.2.5":{"name":"pi-tokenrouter","version":"1.2.5","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.2.5","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"a71874ddf705a2822d5d536e3c8a226d680bb311","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.2.5.tgz","fileCount":6,"integrity":"sha512-wZfrr51Y7lSOrQffsUy1g1kra+rATfYZ9oXIVT/kevek69zM7jVufdYQztHYfQO0ebmexw9IYJCttSkrl8wSpg==","signatures":[{"sig":"MEUCIQDRB+2U7zuEUsEef2bSN2gEHgEaEn0seQF45sRZB8AppQIgB9owHEryDbhGuNpMM6GNFPu94qv5xleWaTfLqCKJWew=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.2.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":40750},"type":"module","gitHead":"f1cbabf2af61724103ecee1585564957fbebf022","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.2.5_1786554917728_0.15153262779229038","host":"s3://npm-registry-packages-npm-production"}},"1.2.6":{"name":"pi-tokenrouter","version":"1.2.6","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.2.6","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"03acad74c5fa18e0a435ccd235ea19a1fba8540c","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.2.6.tgz","fileCount":6,"integrity":"sha512-HgDuiBROb38LB3krX6zabAgaAGM5vHD7Cd1vTsgA54AEt1vQdfqrC9qNox+cqiIvirZZ+6UDBXUvNu0KFNZWQw==","signatures":[{"sig":"MEUCIQCaWysH0ozpxGdvGTEbzBcAK9Vf0qiZ0tAabqmr2XOz2gIgCuhGVE0s7e8334ey9u5JaZSuB0/yEf4UplCg13BqgGI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.2.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41900},"type":"module","gitHead":"f3050a7ba81b579539df32f4e004d47a19def28a","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.2.6_1786610632323_0.19000677805405752","host":"s3://npm-registry-packages-npm-production"}},"1.2.7":{"name":"pi-tokenrouter","version":"1.2.7","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.2.7","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"2b362c7c0dcbdabd885cfb9a752f52292143fa06","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.2.7.tgz","fileCount":6,"integrity":"sha512-wpzFe2LGOyD+VsYfO89m4XIh2LdLVJuajdzG0e/HR6rhcC9GB5tkM7ab/OQRj7hO7DuKrFTNM1oiIJa3tQYzPA==","signatures":[{"sig":"MEYCIQDYnPzfvHsYdFU79NB6jK8xN7E4IM4/jOIsT8n1Ku+fvAIhAJsjhTkkcd4YkzsLd1ZY3TaftBYc1cZWiUFsByAirBYd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.2.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41942},"type":"module","gitHead":"3206d58259d878bc62829fb2c2787f82c442610e","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.2.7_1786614102942_0.10438457039992688","host":"s3://npm-registry-packages-npm-production"}},"1.2.8":{"name":"pi-tokenrouter","version":"1.2.8","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.2.8","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"0d9f4ffa124d7ac46dac8d0313f310e1f18ae93d","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.2.8.tgz","fileCount":6,"integrity":"sha512-KsMgbn8eN9LGuLO0Rq7dndbDNnlWefuDBY7c83HVw06S1DKEtSZDWV/MXa+BVnsZw2mKjn7QV4Vox4Pfxj2k1Q==","signatures":[{"sig":"MEQCIA8XD69LFsNuSvYcbgKpKpwh++lZFNqFi6RScArK2jK3AiB0jxoxOs0XxJ2g3xQQqFldCNQiuCFRVra/QSHEEtC9Wg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.2.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":44228},"type":"module","gitHead":"721828788cc423a1ab533359b023436abdc4779f","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.2.8_1786616311137_0.8279495048535808","host":"s3://npm-registry-packages-npm-production"}},"1.2.9":{"name":"pi-tokenrouter","version":"1.2.9","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.2.9","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"f3530dc46a3d6db75c1826b2fdf3b7b5a40369db","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.2.9.tgz","fileCount":6,"integrity":"sha512-2pVWbz2U6tpTSzXzul7/RCt29keTJb7dXz0lFS5xVOqo8RFAPiMMmUprvDrA3ExCuumqszek9hvsedqmM3Meug==","signatures":[{"sig":"MEQCIE24OwvDMhb6u8OWDc0U71iVI3FmdyYpvUrXRdpb5OC2AiAHWWPRlVXWCK0sqp7UhOA3BbSh49AafPyjbKPhW9BSKA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.2.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":45230},"type":"module","gitHead":"fecfa16f06bbec930b9a14e9a5fc026449f83e4b","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.1","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.2.9_1786626569040_0.5346421045283538","host":"s3://npm-registry-packages-npm-production"}},"1.2.10":{"name":"pi-tokenrouter","version":"1.2.10","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.2.10","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"2e2f89c5daa3c4f97a094fc2def5eec80d7e3124","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.2.10.tgz","fileCount":6,"integrity":"sha512-lqHEpUw4pxqsMuCNKgzEU/4UtMAm5OkMJPTJVByANPEixs6cF8cVUrtECgdjejpHm7bN8HoOE7VJOamxRNw6+Q==","signatures":[{"sig":"MEYCIQCSEo4fiC2QGwvXkvs6rVBCvLn8VzJbGAyOw9BLxjvhZgIhAI2kb8X/5ZKXOPeqBLFt4L1rOW0yHFxVPWcMJ9Sud04I","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.2.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":45896},"type":"module","gitHead":"060bc8e0f6f5ac8b829d7fa12ace7b6e62c56bd7","scripts":{"generate-models":"node scripts/generate-models.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.2.10_1786933528320_0.2780802346808906","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"pi-tokenrouter","version":"1.3.0","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.3.0","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"f6260e5b533d735c288b0fa24016e801ebf25398","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.3.0.tgz","fileCount":8,"integrity":"sha512-MndidiFGXuc9XE2iUg94pfjUTARISov8VH4o4z5D8vPLTCL23+jNx1KFyVEDF+4sTRaF6DpJLcMEH0cUf0boug==","signatures":[{"sig":"MEUCIQDIK2OQII186ObScW5paq7KkM/CVsq8nBKZFcZskVx5IgIgUAg1n0nnhhE3ZEH3ksFN3pR2BKBOyDuuajk2dp5egzU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":63599},"type":"module","gitHead":"49668c1ea3d5a6a83aa8bdc67438dd311dcae195","scripts":{"test":"tsc --noEmit && tsx test/tokenrouter-provider.test.ts && tsx test/model-loader.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.3.0_1786950495115_0.03813562243984614","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"pi-tokenrouter","version":"1.3.1","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.3.1","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"b7d05503d2abc7d4c46768ab65ad995a4d50ff33","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.3.1.tgz","fileCount":8,"integrity":"sha512-8LtUbU8hvZ/wowNp03ipx470rs4+ruFeGGUEDNBneZ5tWyxvBMusSl1QND4bYFbY2BKw72QHtKPMlPa2hUXt9w==","signatures":[{"sig":"MEQCIAWVeeHvMBK2TxCuEXATzyvCgGLeDuAcrdBSFY1Ja72nAiAdzkWvXYHO1drqOokkt+fu93czWKedffuUaW7avkvZoQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":66273},"type":"module","gitHead":"9efcd8a8bb48fb3a37907bbb332c5ff045149a93","scripts":{"test":"tsc --noEmit && tsx test/tokenrouter-provider.test.ts && tsx test/model-loader.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.3.1_1786954191621_0.5616410101324643","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"pi-tokenrouter","version":"1.3.2","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.3.2","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"9a3138951b82e3dd9daab102a54debb437e120ea","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.3.2.tgz","fileCount":8,"integrity":"sha512-tKH49dUWf8sYgBXunxNPfWaMNZBf03mv/X54SFgwSDC6tFDnseXETz4qpVe7Ai1awA+510aSKtULq7ZzShQCCQ==","signatures":[{"sig":"MEUCICeD2ZCn79b3Q4dBUJUjxcojzvpj9nKW4UDlPLSeW/ROAiEA6gGM0wdY7d2A5Map9m4oa2KoDbc8GamWchy54wDFyQA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":66519},"type":"module","gitHead":"5a2a2c4add8758f112540736e7adeb891de956ef","scripts":{"test":"tsc --noEmit && tsx test/tokenrouter-provider.test.ts && tsx test/model-loader.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.3.2_1787820031199_0.04471801466199632","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"pi-tokenrouter","version":"1.3.3","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.3.3","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"180b1a1ae564e836e4877ddf42288eb7c07db96e","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.3.3.tgz","fileCount":8,"integrity":"sha512-4/7MaUMZ/nxK93E35ET24UdShTj0HUhsvAavZSgxyuqlTVjf4SbIa85Y6Tbc2pr4AmjL41NaUJU7S7KwJ2WEog==","signatures":[{"sig":"MEYCIQDaAcYhUM8YfD5OozCRitk5kvuVuzgyEjnuVREWj92PmwIhAPOhjoqAoPW7xBYa5z8BHxiGGXk55ieWvHXRDJraC/f/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.3.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":67780},"type":"module","gitHead":"c2879f95d829ff20a21cd9c3742aa551f7879455","scripts":{"test":"tsc --noEmit && tsx test/tokenrouter-provider.test.ts && tsx test/model-loader.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.3.3_1787821462020_0.5919381371753363","host":"s3://npm-registry-packages-npm-production"}},"1.3.4":{"name":"pi-tokenrouter","version":"1.3.4","keywords":["pi","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.3.4","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"3be80da7ed96863d847a4945e634f895c31fd74c","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.3.4.tgz","fileCount":8,"integrity":"sha512-LzWdl/PKNdh0QoYmdzPVqQrOey8sl3ZiNjWTiN3wmnPZnjM75u4HOMLKJ06KYm5DlYNCsSRcdp8JOVGWZ0Hw/A==","signatures":[{"sig":"MEUCICaKSSX/Z789SFj3R1nnMqRd6jk4lyjCK7QArldggA0uAiEAwLfUOsmlel6gBPiaCcHvDeRA2FYmcNedrVMYOGyIonA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.3.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":69653},"type":"module","gitHead":"867846ab7da3a55ff1f050596b45f50f94dacb3a","scripts":{"test":"tsc --noEmit && tsx test/tokenrouter-provider.test.ts && tsx test/model-loader.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.3.4_1787823992242_0.8244619290802129","host":"s3://npm-registry-packages-npm-production"}},"1.3.5":{"name":"pi-tokenrouter","version":"1.3.5","keywords":["pi","pi-package","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.3.5","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"b782db64eeb89814e3abb292028463df7834cca3","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.3.5.tgz","fileCount":8,"integrity":"sha512-9wRh9ywK7UiWb/WwFcsp3K0bw13MSviEgUu2INPgQYmaZj9iJksikw57iaguO3Pvh73hokiHGe5kLuHOt/6XCw==","signatures":[{"sig":"MEYCIQCwGfmL94FI183qW5Y1P2CczD/A7ce6G/ooDP0yWmgMSQIhAOd//x23lhp+2Re94scWCF4xYTZUsfRL1oQL0hLYmFVd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDjLj8V4/RXFt80twkFcDtK1omFH00ssVTR5nKZkvE5TAIgQwE0fPf5T5PEHG84oBLzgKDGpMWXOenBg0iuxfWW3WE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.3.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":69671},"type":"module","gitHead":"99368a396233b355c5df7e4d512d64ca8d786a64","scripts":{"test":"tsc --noEmit && tsx test/tokenrouter-provider.test.ts && tsx test/model-loader.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.3.5_1789137829260_0.5743809638936612","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"pi-tokenrouter","version":"1.4.0","keywords":["pi","pi-package","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.4.0","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"1cb351932a5f12c18524490a2a14d9f932c41509","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.4.0.tgz","fileCount":8,"integrity":"sha512-BOaUeNNfYZN085VlBKa4oSpbH3/N7UREJlzejvcZJgW2YFbV4+bG2l95sL29dPJe24cM63COtGvfWyi24ihmLw==","signatures":[{"sig":"MEYCIQDzug6n4XvQFn3aDhlgyb6FLS5hei7Om+ZunD+YuGxJsQIhAO90z78NquIk71SufiVQt7q6X/UZhc+mlELDdLE/tLh8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFDpcetHugNbAxJEvYu3W9S2zSfC3Y7wWx7PMh+ElNBhAiAjeetn3ZsZ3M2A7owRwHgxYlPma5LvNVw1e/dMTPYX1g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":75292},"type":"module","gitHead":"c187a38477b1c07427bbbca6302c27a6727ca2ee","scripts":{"test":"tsc --noEmit && tsx test/tokenrouter-provider.test.ts && tsx test/model-loader.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.0.2","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.4.0_1789139070894_0.9457690143852646","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"pi-tokenrouter","version":"1.4.1","keywords":["pi","pi-package","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.4.1","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"91f916477196540af471f26716386dc3f8a424ca","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.4.1.tgz","fileCount":8,"integrity":"sha512-nt1d++tB3wfAbmdvgA4EcH98kcbq2++QgkIMP9hvoau9ykSm/1CQNgnADTUM21jM9n13jOiYcyugHSr2kCgE9Q==","signatures":[{"sig":"MEUCIQCQKdbR5NFaG3vpEW5UVm460NDh6GewzH3lQI9RHi+drwIgF0yNOsHnSgto75G/xFcoTTesKasj1xfATejXpth7fis=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCIr7ktmpBS3ylfyKpswbvM2n95EKPF66hjaAcjb/CACAIhAL0PStcufwmflhCn6yyeUE2k0IxKR20auS8ZU2omRgLO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76507},"type":"module","gitHead":"706adf5861488f3304b53068bf9e553d3f92f9e5","scripts":{"test":"tsc --noEmit && tsx test/tokenrouter-provider.test.ts && tsx test/model-loader.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.1.0","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.4.1_1790220604393_0.8435158866995602","host":"s3://npm-registry-packages-npm-production"}},"1.4.2":{"name":"pi-tokenrouter","version":"1.4.2","keywords":["pi","pi-package","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"license":"MIT","_id":"pi-tokenrouter@1.4.2","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"pi":{"extensions":["./index.ts"]},"dist":{"shasum":"42e2230bda77739bb3c3d8dbed9e7ce6648690a7","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.4.2.tgz","fileCount":8,"integrity":"sha512-fTSrk76c46VPMs/dJ833jy/GbDtmzcLIVKHIf8Yflwk1Jucsias9YsfRVbKaNbJ1qJEvF3IEPbfwxOlh0125qQ==","signatures":[{"sig":"MEYCIQCpHEFA78W7JoIji8wAhwStbetG5S1PetEod96Fz1YdVgIhALES2I8y/t3jhQjiBcUnfcvipm4qgAZV0UG/Vdm3TMxc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICDHxrD1IWSWgiWhCjGPXrYbDbAYFTwsI7kIQIhGUrQIAiBA89KuAd+jErs3vpHYI1OdSRMeZMaDotE4DdRtZj7a8w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":76667},"type":"module","gitHead":"e765bfb408f39337b99c4dd4e44147a347c36318","scripts":{"test":"tsc --noEmit && tsx test/tokenrouter-provider.test.ts && tsx test/model-loader.test.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.1.0","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"peerDependenciesMeta":{"@mariozechner/pi-ai":{"optional":true},"@mariozechner/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/pi-tokenrouter_1.4.2_1790222983606_0.6353640505155691","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"pi":{"extensions":["./index.ts"]},"_id":"pi-tokenrouter@1.5.0","bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"dist":{"shasum":"b37dff36e0b10820dd1267fa054791ae50a6d11a","tarball":"https://registry.npmjs.org/pi-tokenrouter/-/pi-tokenrouter-1.5.0.tgz","fileCount":8,"integrity":"sha512-Ae2AfAsE9jbfgWe/t1TXu9/oBImV4RB/gvn/7LBlJ6eCD6LWVmq63IYFvzZYU3Dcp9r3VNftinCAxXffnxcUgQ==","signatures":[{"sig":"MEYCIQDz0sWz0iHrzzOJxKuGhiX617ZgEBAcnGGMdAlmlW0MwAIhAIKnUMT/07aQK4TJLPZDwSzddfiHsJoLN9nJIK1IkbKG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDyRlpbtIVlCDGYkInnITYH/J32SNh5/fYaGYKk0pC7RgIhAMLTSnVNU2Paqg/I+m1l2IFYClmSVMPknLSOwMsv9eaV"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/pi-tokenrouter@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":78556},"name":"pi-tokenrouter","type":"module","gitHead":"dc6ccd6075aa86ba5c94cd23a1a3a05a6bef8a6f","license":"MIT","scripts":{"test":"tsc --noEmit && tsx test/tokenrouter-provider.test.ts && tsx test/model-loader.test.ts","typecheck":"tsc --noEmit"},"version":"1.5.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:633691f2-4b41-4110-8195-a38016487902"}},"homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","keywords":["pi","pi-package","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"_npmVersion":"12.1.0","description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","directories":{},"maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"_nodeVersion":"22.23.2","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.0","typescript":"^5.8.0","@mariozechner/pi-ai":"^0.70.0","@mariozechner/pi-coding-agent":"^0.70.0"},"peerDependencies":{"@mariozechner/pi-ai":">=0.70.0","@mariozechner/pi-coding-agent":">=0.70.0"},"peerDependenciesMeta":{"@mariozechner/pi-ai":{"optional":true},"@mariozechner/pi-coding-agent":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pi-tokenrouter_1.5.0_1790228371860_0.6576737025350201"}}},"time":{"created":"2026-04-28T12:31:26.168Z","modified":"2026-09-24T05:39:32.230Z","1.0.0":"2026-04-28T12:31:26.463Z","1.0.4":"2026-04-28T12:53:09.433Z","1.0.5":"2026-05-07T03:32:15.008Z","1.0.6":"2026-05-23T12:35:37.517Z","1.0.7":"2026-05-29T09:16:57.586Z","1.0.8":"2026-05-31T07:59:42.040Z","1.2.0":"2026-05-31T12:52:46.264Z","1.2.1":"2026-07-19T03:26:05.988Z","1.2.2":"2026-07-20T15:21:21.495Z","1.2.3":"2026-07-29T15:57:06.794Z","1.2.4":"2026-08-04T07:50:20.863Z","1.2.5":"2026-08-12T17:15:17.878Z","1.2.6":"2026-08-13T08:43:52.465Z","1.2.7":"2026-08-13T09:41:43.115Z","1.2.8":"2026-08-13T10:18:31.362Z","1.2.9":"2026-08-13T13:09:29.199Z","1.2.10":"2026-08-17T02:25:28.465Z","1.3.0":"2026-08-17T07:08:15.252Z","1.3.1":"2026-08-17T08:09:51.784Z","1.3.2":"2026-08-27T08:40:31.332Z","1.3.3":"2026-08-27T09:04:22.162Z","1.3.4":"2026-08-27T09:46:32.373Z","1.3.5":"2026-09-11T14:43:49.346Z","1.4.0":"2026-09-11T15:04:30.973Z","1.4.1":"2026-09-24T03:30:04.485Z","1.4.2":"2026-09-24T04:09:43.695Z","1.5.0":"2026-09-24T05:39:31.934Z"},"bugs":{"url":"https://github.com/liaowang11/pi-tokenrouter/issues"},"license":"MIT","homepage":"https://github.com/liaowang11/pi-tokenrouter#readme","keywords":["pi","pi-package","pi-extension","pi-provider","tokenrouter","openrouter","llm","ai"],"repository":{"url":"git+https://github.com/liaowang11/pi-tokenrouter.git","type":"git"},"description":"TokenRouter provider extension for pi — dynamic model discovery with OpenRouter-compatible pricing","maintainers":[{"name":"liaowang11","email":"lwlw1988@gmail.com"}],"readme":"# pi-tokenrouter\n\nA [pi](https://github.com/badlogic/pi-mono) provider extension for [TokenRouter](https://tokenrouter.com).\n\nModels are derived from TokenRouter's `/v1/models` list and enriched with metadata from [models.dev](https://models.dev) first, then [OpenRouter](https://openrouter.ai).\n\n## Install\n\n```bash\npi install npm:pi-tokenrouter\n```\n\nOr run directly:\n\n```bash\npi -e /path/to/pi-tokenrouter\n```\n\n## Authentication\n\nResolve via `/login`, environment variable, or `auth.json`:\n\n```bash\n# Option 1: Interactive login\n/login tokenrouter\n\n# Option 2: Environment variable\nexport TOKENROUTER_API_KEY=sk-...\n\n# Option 3: auth.json (~/.pi/agent/auth.json)\n# \"tokenrouter\": { \"type\": \"api_key\", \"key\": \"sk-...\" }\n```\n\n### oh-my-pi (omp)\n\nThe extension also loads in [omp](https://github.com/can1357/oh-my-pi): install it with `omp install pi-tokenrouter`, or load a checkout with `omp -e /path/to/pi-tokenrouter`. Authenticate with `/login tokenrouter` (or `omp login tokenrouter`) and paste the API key, or export `TOKENROUTER_API_KEY`, which takes precedence over the stored login. omp takes thinking levels from its own model catalog and ignores this extension's per-model `thinkingLevelMap` and `forceAdaptiveThinking`; `reasoningEffortMap` still applies.\n\n## How it works\n\n1. Registers TokenRouter as an API-key provider, so `/login tokenrouter` is handled under `Use an API key`.\n2. Discovers the model catalog at startup: it fetches TokenRouter's authenticated `/v1/models` response in the background and enriches each model with metadata from `models.dev` when available, then falls back to OpenRouter for pricing, context window, max output tokens, reasoning support, and image support. The two metadata services are fetched independently: if one is down, the other still enriches; if both are down, TokenRouter's list stays live and the last cached metadata is reused for models it already knows (defaults cover the rest) with a warning naming the unreachable services.\n3. Caches the discovered catalog at `~/.pi/agent/tokenrouter-models.json`. When TokenRouter itself is unreachable or the API key is missing, the cache is used; when there is no valid cache either, a bundled snapshot (`models.generated.ts`) is used.\n4. `/tokenrouter-refresh` re-runs discovery on demand and reports what changed.\n\n## Reasoning\n\nReasoning models routed through TokenRouter's OpenAI-completions API get `reasoning_split: true` on every request. Without it, MiniMax-M3 streams its chain-of-thought inline in `content` wrapped in literal `<think>` tags (verified 2026-09-11), polluting the answer; with the split, TokenRouter returns it as `reasoning_content` plus `reasoning_details`, which pi shows as a separate thinking block and retains for replay respectively. Routes that already split by default (verified on `z-ai/glm-5.3` paid and free) ignore the parameter. Anthropic and OpenAI Responses models are unaffected — those APIs have native reasoning channels.\n\nDisplayed prices are estimates borrowed from models.dev and OpenRouter; TokenRouter's actual billing for a route can differ.\n\n## Context overflow\n\npi detects context-length errors from most upstreams TokenRouter proxies (including MiniMax's `context window exceeds limit`) and recovers by compacting and retrying. Probing in 2026-09 found no TokenRouter-specific overflow phrasing that pi misses, so this extension adds no error rewriting. Oversized prefills can instead surface as `429 rate_limit_error` admission rejections (verified on `z-ai/glm-5.3-free`); those stay on pi's normal retry path.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}