{"_id":"snowgander","_rev":"89-1d11de4b2c773d8659155e0c4c07faa9","name":"snowgander","dist-tags":{"latest":"0.8.0"},"versions":{"0.0.1":{"name":"snowgander","version":"0.0.1","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris"},"license":"MIT","_id":"snowgander@0.0.1","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"9fbda59600461bf1975a0701937fad0e0353082c","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.1.tgz","fileCount":17,"integrity":"sha512-KKSS1414ZhvaKcFhpYBSCZbJ1Vc44/Uaoial3oArvlDJmtBcauViI53YMCDILMtuwAq7HUefHjmRbk8bBFbGyA==","signatures":[{"sig":"MEQCIFQdCIbFtQ3D+tDVbUAmqSXkRvAwea+8KSfNVwUjA5k/AiAJTRwB1aRca1Z42HZwD1IQqmLRVVjrHCbT4JpGSSZ7XQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":47449},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"6c46fff412ebac6d16a4df947caecbe90e01cf1b","private":false,"scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.1_1743636375445_0.8305764359900598","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"snowgander","version":"0.0.2","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.2","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"dd7b354ae311fadc7eaca37230abb0a834507cbd","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.2.tgz","fileCount":17,"integrity":"sha512-bcwaWcdXr8Re+VjXmaIdB+ApzTLXO083tfGZd0rshyPq1tF+X5RsW2aQ636t0TvJ5coZWlIUBg+Fov29Zf6slw==","signatures":[{"sig":"MEUCIQCMEWrD6EqK/VXFTvEEIvVvHuWiaMZwMVoFZYSN85ADOAIgOkqRa6tjQTqwMiOiws8Ri7MJ2MOidmLI7YT2ztcgb7w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":55226},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"6c46fff412ebac6d16a4df947caecbe90e01cf1b","private":false,"scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.2_1743656679936_0.7425512656163675","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"snowgander","version":"0.0.3","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.3","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"d64d7638927a3db4f441152708217ad660f9331f","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.3.tgz","fileCount":18,"integrity":"sha512-iRNCzehALa1p/thgRVUoexTpvlyZEUmvs0j4k57M05Iy7sSGlKFR/GdoJamc2rYWsXKPqNqzkUqI0Okaw+9Yyg==","signatures":[{"sig":"MEUCIQCXeSbalPOZBH7fkOR6y+grN1DR/wX2ev/MY67nCHbvQQIgDHOotSMTU2iQhbM0CiA5QjtGAEW4SmDRf98IqsT9rjg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48460},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"2af0719885c9e35582509033ba01587d34ec7ba8","private":false,"scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.9.0","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"22.12.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.3_1743721515044_0.24609911170701193","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"snowgander","version":"0.0.4","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.4","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"c4eff10d2c51eddcdfb671d14240619e2587050e","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.4.tgz","fileCount":18,"integrity":"sha512-ED+dSbldfEngo9yrKLVC3sNpojrKDp9TwGep0CiFUTrfTEGdE1JaOCQdeLqgQ1pcv1tJvdLozvBuRzf/rPtpyQ==","signatures":[{"sig":"MEUCIQDhsfFDcihDol8axo8QHIbKCmtqdxgzTMpBfeDxmkI1EwIgBVYi2lR/vpNC73zGxyMijJHZcPs97IAZdX+61gLNQsM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51927},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"2af0719885c9e35582509033ba01587d34ec7ba8","private":false,"scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.9.0","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"22.12.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.4_1743729063518_0.09973624500405709","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"snowgander","version":"0.0.5","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.5","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"edf1a2594d3ae6a14bc236c246cfe4bd72888e00","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.5.tgz","fileCount":30,"integrity":"sha512-1b9m82N3fA6Q5O5K+8qh+CXIjNT1cyr6NcCUDHd3IYimbOfxqiWboflYijmsFX/tu0noD9iTmF/VGE4ynZo/cg==","signatures":[{"sig":"MEYCIQDgiT00UtAEsRdM/Ce7uwL6yj1+xMcZc0weaWwI5XoBjwIhAOIVyC0tL3bV5XTb12s8zKPh1prqxkOYaXkACn8oA1ye","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":147486},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"feb6fcca9f64cc7f08c4d030516b8d1077c6f832","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.5_1743743723514_0.06387477794450391","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"snowgander","version":"0.0.6","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.6","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"ab0b988aa27bde4697301a64ff01c38779c8bfb3","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.6.tgz","fileCount":30,"integrity":"sha512-lAdwWiR5mgvYn7qDrXAmadckTF5lfdx4dMS4JIuwsB9Qy3kDZtoAFN1qn/M1t7z/Q2+RlAVOI4/s3pfxELCyGg==","signatures":[{"sig":"MEQCIDNKqUz71uqb6EiocuUsQo5zX/NQLOIqOX3QlOl63+tvAiAXM903Ti+tG/gMbh7pfJlwUj+hpQ7FUAzponhRUgQ7uQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":148096},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"39a4c9aef467ddea5075d1dd2f17442c2ec60199","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.6_1743745061007_0.2647960112647685","host":"s3://npm-registry-packages-npm-production"}},"0.0.7":{"name":"snowgander","version":"0.0.7","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.7","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"f4c16096e2b22c9e9e4a02846f5efec83e6902ce","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.7.tgz","fileCount":30,"integrity":"sha512-HK2abqVCy4WIg3fk/zKGtH6Fz3a3RhLBIq0XOTlhECrpQ6TreC5IcnYd3DXyTJH6Cz2U1uz0BxXf3wXxnqAnwA==","signatures":[{"sig":"MEQCIDCV8oc1pwq2DRs5qPIhDzpL249JIsJ707dOo37KVw7VAiB5JTC+9jIJUrWDcPHAGJjzecrJNWpOsKTsgzcGPrpnVw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":150044},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"7d1fed9715d8a33f523feeb34f850d002b803f93","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.7_1743783289140_0.5960473029415381","host":"s3://npm-registry-packages-npm-production"}},"0.0.8":{"name":"snowgander","version":"0.0.8","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.8","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"f70bca220373016ba22c3ed162aa9cbd72b61174","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.8.tgz","fileCount":30,"integrity":"sha512-R7+isFzSLAJyGOqMYuoNP6LjNabXqmBwOcvja1N1/7Ci+xsNbT5RFk5a9eWyj8aZHu76luZW+PSC0A2FeiBetg==","signatures":[{"sig":"MEUCIQC64nvPKM70uKErkXH2Bsw79ISbplE9aoquxBgu5bg5EAIgHpv32shXPi9vFXXG55cz8cfMooiTrWt45srQEICjmiY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":148389},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"7d1fed9715d8a33f523feeb34f850d002b803f93","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.8_1743799853551_0.290954374351027","host":"s3://npm-registry-packages-npm-production"}},"0.0.9":{"name":"snowgander","version":"0.0.9","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.9","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"624328397a5b53523421509620c4c94219739b34","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.9.tgz","fileCount":30,"integrity":"sha512-cAyfPU9slmbpUM11xZidBEu11Y4hmzIs/qPPJbQ7FSFBY+yfOlDyGz+DC7nTGNKgvwGXnfSf6FsxrWhSn8KHww==","signatures":[{"sig":"MEQCIBB5fJTAOL5OwEwUrMnL388XyzZ10KDy76rwI+DzJLJxAiBmZJAhtfkiMB/kk19VgoqBPpl9/NutqQHCMNGfZMl4Yw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":151491},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"cd747e69c4ea0530b3faa9aa4e24bb390610d58f","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.9_1743802940816_0.8245948018051643","host":"s3://npm-registry-packages-npm-production"}},"0.0.10":{"name":"snowgander","version":"0.0.10","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.10","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"5b6c93f0f4520c06c79d6d23a4b233301e91ac39","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.10.tgz","fileCount":30,"integrity":"sha512-GOeTwhhYGeBVNrU5g3sQ2YN3SiTgOHOBzrIfav2eraOX7e8QZyJlJMvq9GhrLM2YlxUun/dNTk0eU2D98WX3AA==","signatures":[{"sig":"MEQCIFJEOAKVOKLMq1WjHJ7/Uopt3R9RSiOscq1WeTjTB8QpAiBIWoOpsCk6+CCNwnnVjBwjSxw8qp/JZkDVMGF30tKTZw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":153661},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"d692e11b6dee89a4b83f06715321f9f89c359518","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.10_1743806943245_0.6609991639903212","host":"s3://npm-registry-packages-npm-production"}},"0.0.11":{"name":"snowgander","version":"0.0.11","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.11","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"2e9aa46473d31a1f4904198132c3493c868b72d6","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.11.tgz","fileCount":30,"integrity":"sha512-tVRnpLejAOXmyIq2t5BFWzKcPwIRiKn4Gm88quKclAaFlMFlNWzJ++QJnI9cf6tQ9kGMChy5+LFIZsjxLUgKvg==","signatures":[{"sig":"MEUCIBwFd2MkFnWweLbPQ5fEGCB2oDEpaw+zpeq5uqbSexf/AiEAvqnbk6dWlWVRGk9/+QFw4PzvE5P4MOnJ1dgzG7pAlOk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":155052},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"492c8103afbee100a6255e689f951fda385bae57","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.11_1743807644876_0.7768018055958801","host":"s3://npm-registry-packages-npm-production"}},"0.0.12":{"name":"snowgander","version":"0.0.12","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.12","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"ad4e00d2854403cf962f8d88fb523e57ab1d5648","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.12.tgz","fileCount":30,"integrity":"sha512-szw54AdnyzdqlyVsePr0cBgTwxCDj9KI+yj1Yd4+S9Zj8tnBNsxY+WGNzzE5U23z4b3zQeVwyxG5z3yFn8/qFQ==","signatures":[{"sig":"MEUCIEzTMRpSImpdrGoRKWEmTMLVYblkQNcQj5UwvYb/Se7fAiEAvdLvQRvUkCsMk4mZ7Oe0J5fhMDTwkABIdImo60YD5uo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":155161},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"773aaf4a686e2d6701131cc1585d3eeda42ff8dc","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.12_1743808251874_0.36733315174273873","host":"s3://npm-registry-packages-npm-production"}},"0.0.13":{"name":"snowgander","version":"0.0.13","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.13","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"0f331d2734f3ebda0eb0908b9f5ced54bc39ab68","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.13.tgz","fileCount":30,"integrity":"sha512-wudl6bxmdzLsJEDQ09elgR6Tdxb7d/yxOTHvDN8uTlD3M5DezTYs6kLmdWRHQiKfOdANA6qmZtSDABnb1qK/jQ==","signatures":[{"sig":"MEUCIFD0pbfnuuyEOm06hcRT3CBayDtlXDoe8uenS1hDmD7qAiEAkT15Ah3WmL10oGggLKORF6ozKUGwfPzbpCOtpSAWl4A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":156365},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"f3355932dd90a5abc0ab4668d205ac369e73a925","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.13_1743811631464_0.8806771321398668","host":"s3://npm-registry-packages-npm-production"}},"0.0.14":{"name":"snowgander","version":"0.0.14","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.14","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"481a981d0f92c65d7f0c6226b038eb00d0bf0642","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.14.tgz","fileCount":30,"integrity":"sha512-qRooqQy47aA34ra6KKkMUt8htG/kbUhYtSJZYxOzBhD5bUztU6t/1TEH+lep6OjHCo21OBkVC9YmNY7otwR6zw==","signatures":[{"sig":"MEUCIFYHapXZcs/eSzIkPZethRCUMMmWaM4i0ccO21cGZJqiAiEApkjKz5mauQIv3uEnVXZZcXahls5mO9zwwlzjixR4auY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":156067},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"3cf0d8599ec58273eed63cdc91af87669e4b5544","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.14_1743866047514_0.13544069401127912","host":"s3://npm-registry-packages-npm-production"}},"0.0.15":{"name":"snowgander","version":"0.0.15","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.15","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"cb975f23afd9faaeffc7673f5399ff3a450b7c6c","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.15.tgz","fileCount":30,"integrity":"sha512-jRkN9c9GNMQbJhYMSDu1AsE3EKfVIk9+03xt4IZuu7BxwctGgjyIQXJJ+6q/l5Fw1XX2fveVvu3UYUjLJCl5Fw==","signatures":[{"sig":"MEUCIFSN1dVEZcAONBwuyyHq4qEJdfQ1rG+mLnqR9LaGDUfkAiEAgf8CkFCjgL0iLCXldAr/azGURaWJ6v31Or0rwFUQXMU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":156382},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"b347a86e4deec24106725c7ecf7c16c750055fbd","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"openai":"^4.91.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.15_1743868046115_0.8382356553959136","host":"s3://npm-registry-packages-npm-production"}},"0.0.16":{"name":"snowgander","version":"0.0.16","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.16","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"00589d08ad365eeab70fb9d47f5bf17010e32d65","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.16.tgz","fileCount":30,"integrity":"sha512-7huwGETel9oNP7B0gJBwN518uyYd16VDlss7AGVFus7HTzsOoHuU6EkDZ72m/iItBpKoUCVc1ep0NGp8JozmsA==","signatures":[{"sig":"MEYCIQCyj9lrOPT7NVvsyLWgYobqvzLJB+/eYl/6LmnyCA/LOAIhAKj+otDVuTAv5Ida9Ldu6MugPx+BKzSUKBbB9RRf99L5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":158843},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"ef8396063b212b68aeeb47c0dbbf0acf24f1b57d","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.91.1","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.16_1743873086255_0.14243250514855887","host":"s3://npm-registry-packages-npm-production"}},"0.0.17":{"name":"snowgander","version":"0.0.17","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.17","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"9fad8d76473e9743eeead017e96bc71af9631b8f","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.17.tgz","fileCount":30,"integrity":"sha512-4t6+yjdVPPBsoctYXpxQcXzdO/6qvA/Ne7BZRPh6oijXGL48Rh7TsajxBEjtjUmna4OpzAJn89NOepxIEkxvNw==","signatures":[{"sig":"MEUCICa5P92CvhNce79MSIc9upMdxeWJHHCduIS0dch5Ws6/AiEAlYqCFLRQpOJWamkDramqJXi5gygn31H7PEQkTbQ4Qys=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165739},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"f6735860ff10dba8bdcc0e875bf1d30a407cbaf0","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.91.1","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.17_1743894465800_0.5944804469784868","host":"s3://npm-registry-packages-npm-production"}},"0.0.18":{"name":"snowgander","version":"0.0.18","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.18","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"22c319206708791b723291f833fcb3479b1bbc8b","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.18.tgz","fileCount":30,"integrity":"sha512-kUYFzjnLTya1nkiy7hgCKWq5aUM9ahBY9FdbhEMzok9XdtxHMEWyqELYiy9LWIUeyjBL1/vdkmgGFIWDmd1/XQ==","signatures":[{"sig":"MEUCIQCOovQELc9NI4K7ClV6AzaM2loOM4HxsLAEcqvm7I9zJgIgZKJAnDLG79WZ3iUTSQZWDOyjq3kuzvx+l1j8fVkj658=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":170905},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"a2818eccf09c8cb8350ba13008728159801cbbcb","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.91.1","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.18_1744641483729_0.8478306969607312","host":"s3://npm-registry-packages-npm-production"}},"0.0.19":{"name":"snowgander","version":"0.0.19","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.19","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"4aaddcb322ea24cbe1f10ff02dc5cd4e7b5a4bc4","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.19.tgz","fileCount":30,"integrity":"sha512-YAtS9azwhFunVST0FcQEdaLIDhd8RS/CCP0J+Hv5a9xzo9ZY4nm/L1mJ5CcfGAwQ6R1rA2gUn4wktz0KYbav/A==","signatures":[{"sig":"MEUCIQC451J4hWUBf6QnGTlwgVlJhlZ3RbBaIZsGwCMrrlUYxQIgXdvEkq+Qv2SZZ2u+w+e9Pz2NAmv5v/bm8XDmAdP5zKk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":174922},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"cc05181e270c1b1413b53f550590a267b74d118f","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.91.1","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.19_1744651959950_0.0960051860668043","host":"s3://npm-registry-packages-npm-production"}},"0.0.20":{"name":"snowgander","version":"0.0.20","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.20","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"e944e4f71678dca3132088339172dbe9eb760dc3","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.20.tgz","fileCount":34,"integrity":"sha512-43Am8APHMvGySiE5FbDbv2C+Q9EVP9Yj2k+GTvz28sOs4DpzxsaIqxOtOZpKVYWxBdTsnNrHlyXBqLg1jtUIZg==","signatures":[{"sig":"MEUCIDRc2pEuqnD0qGwTz1L6JA4hahHHLgWbu38zH1U2Xl3zAiEAyFw/lsEsbb569irL/BNtkMOBbivxu6e1clHOxagVSOE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":182269},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"427f11b0e1c0c2ec66713cb034ac7b2bfec726b2","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.9.0","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"22.12.0","dependencies":{"axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.20_1745451995030_0.9601087081122528","host":"s3://npm-registry-packages-npm-production"}},"0.0.21":{"name":"snowgander","version":"0.0.21","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.21","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"1a74cedd9f68112aa9c1e1ea3dc0623210d3731e","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.21.tgz","fileCount":34,"integrity":"sha512-59wmpImwMyho5DZiGVmFo5zZUtl4CRwHxl7Af1LM+W5/Otxt3bpK+JuLzkQ2Z4W1NUtmwFe2r3vOaCU9xOKsZw==","signatures":[{"sig":"MEUCIQDFwmLn30RrYqyGM85XiqtZVlWqUrV0F91MvHTUzGeefgIgagETlJ2unYJ2XWVfZNaCToKNSzisZ8BOAhpuPpcicsY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":182367},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"5dba52b6e1313b28d65fe980e0002dea9ab88e44","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.21_1745467067584_0.48354822331589453","host":"s3://npm-registry-packages-npm-production"}},"0.0.22":{"name":"snowgander","version":"0.0.22","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.22","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"8b3b04c349fc3892f25443f3a29a47b970dc6065","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.22.tgz","fileCount":34,"integrity":"sha512-CAYxfKYY7NzWlIKp3nzHVUx3A9tqW4by+41ZhJyDbLD9Za+PFsJQENkIzbLXKRS4d6XuZJ9GtPlPPPb5DZ+gmQ==","signatures":[{"sig":"MEUCIAR52kr3AI9nItoIf3fWx8VxV3R5y68M0VRygpmlMsSwAiEAzBvfSF/eEqrJLey1xaVGnIawh6VgHFmHh6whltYTYnQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":191787},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"b5ed4e3610a8995cc96442039b765c65ab8d952e","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.22_1745502327396_0.8331670627553232","host":"s3://npm-registry-packages-npm-production"}},"0.0.23":{"name":"snowgander","version":"0.0.23","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.23","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"c6194d31b80ee025eb534ba22529eb99ccd1738c","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.23.tgz","fileCount":34,"integrity":"sha512-hPMxip4+nxilCsTRE5IReCouJS94xjF/1f+CuFdEfBY+HmbTl6mpUP9tPKRn4gmLM6vLLvAmZ/88nsCOh7Vplw==","signatures":[{"sig":"MEQCIFHQxlhWVTQI3LVOBooKtpuoWSCbPN+rcLcEdY6UJpQ4AiAfzpPJtjKct0zqS6YROz5wTY0vgIcTplU9KkE1WAx0jg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":192736},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"43477c71068feb823cba14b5804118063dc7e4d8","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.23_1745510044224_0.18852626545969775","host":"s3://npm-registry-packages-npm-production"}},"0.0.24":{"name":"snowgander","version":"0.0.24","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.24","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"271f5a8148ae6dd1a7dc7868eaa14269c49b31da","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.24.tgz","fileCount":34,"integrity":"sha512-d83hlhN2q8BuuueSxADHMHbJiPJUBLj8gptk7cUcoiOy5iOD72ric1EljpiMv6bvugF64ealUDI6MagnQaOXOw==","signatures":[{"sig":"MEQCIEJcwpMYjW9QCZQYO2mi0U8lHpELV3Y5hQCZQ6yA+3oAAiBl/hr7sqD9FrySv0epxyqJqdrFXbOAvWW/4GIedcKFiQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":198208},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"43477c71068feb823cba14b5804118063dc7e4d8","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.24_1745537048611_0.5257569108790408","host":"s3://npm-registry-packages-npm-production"}},"0.0.25":{"name":"snowgander","version":"0.0.25","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.25","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"28124bb5a8e24307aed96c2b73d76a7a60aa990f","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.25.tgz","fileCount":34,"integrity":"sha512-kEOWFcv9wUzfpGkmbCfgqkBH/rEN9XOpiyEB5e3+P981oeyksdxEjJ3BtS5g/CQjjzP6qVAV/ImcfsVg6RtYug==","signatures":[{"sig":"MEUCIQDmgAppDO3yb14G2pVwk71ntTCH2BgelywvWoz9vVJ47wIgN+pl/sA439EaEhNExkqDqE6QW1f2MWprMRK7f32cjEQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":209274},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"462272b52f1790939a7600095ff908e437678480","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.25_1745589063951_0.7799372460792215","host":"s3://npm-registry-packages-npm-production"}},"0.0.26":{"name":"snowgander","version":"0.0.26","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.26","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"c8f758d675eedf13d5a78b7029e5f97dbae6a56e","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.26.tgz","fileCount":34,"integrity":"sha512-+bsz5kFLzK051cyPTExUmU4I3TlOoKLEI9EeIfK+EXfGjWqCphFZYd04SPMCM4/Ftjl2afcBZ0uUFDBKl0B8MA==","signatures":[{"sig":"MEUCIGmgn7/0RVa9PaMZgEezoI7RPzwFby2MtTvY1ABl3V8lAiEAoOo4Tyj4iRXwVYdCDmYJGeNzjZWI553OV+qcLaj5RFk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":209284},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"462272b52f1790939a7600095ff908e437678480","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.26_1745589495128_0.36398288316574456","host":"s3://npm-registry-packages-npm-production"}},"0.0.27":{"name":"snowgander","version":"0.0.27","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.27","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"5b77bb6b33ba3baab2771eb69ec614ab1b46136c","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.27.tgz","fileCount":34,"integrity":"sha512-KjHilsW7kyPhWXEwmehZGp639kvq6DqYZylBlioUwbZRXOMssXgAG6ZJ+fyrdVYV0yYUp/XQEH3Bfl9kYeeVIw==","signatures":[{"sig":"MEUCIHB4+fcLj9Ub3JXfBGW4L9pO4VdeRrVhCny5jBdv2odQAiEAvkPD7p8f8cT4vnwe/CkKZwriRxJTNKjmyps0L56mga0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":209307},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"d2009d966c2bbeb7bc028bb1637946b5e3738e6c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.27_1745618325367_0.4647023043989893","host":"s3://npm-registry-packages-npm-production"}},"0.0.28":{"name":"snowgander","version":"0.0.28","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.28","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"d0e91c5d6ef47730bb5b7777013187b68f20fbe8","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.28.tgz","fileCount":34,"integrity":"sha512-OlcyvQJEd0pCojwecyaelJ/k+jdbmmqcFSfaaZKAm+RIQbx0JU7Qtjk5BFE+O3iUPsgCuinZ2JaoJ4hQyeFUBQ==","signatures":[{"sig":"MEUCIQCdTKwn+jd8lezE+fJEJN5M4gpkxrQZ5qDkktB9oJs5gQIgDe6zvbFUrAOPc3AL+I2IGEn+509mnSNf9q5wXuAd9Ko=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":211112},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"d2009d966c2bbeb7bc028bb1637946b5e3738e6c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.28_1745645215951_0.8399542608253152","host":"s3://npm-registry-packages-npm-production"}},"0.0.29":{"name":"snowgander","version":"0.0.29","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.29","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"cf23a471457cfacabe02a0c78d75a92c57f009b4","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.29.tgz","fileCount":34,"integrity":"sha512-/GNaYJkorxmaWAeFbb4hF4HLPk/J++OSn69b13K4RLtCIT2c0m2WNvbMLdm3X2LODrQEhTDYeKiGNIl7xzEQVw==","signatures":[{"sig":"MEYCIQCOytHOzd3p7KfLcQXafJngNSpyu4z9nEfSxHCAZVRV9gIhALPm7wLTxxPZWlCww4XmsbX3P/3tEgTWeETLGLaTePye","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":211113},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"d2009d966c2bbeb7bc028bb1637946b5e3738e6c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.29_1745646993951_0.5979197251511816","host":"s3://npm-registry-packages-npm-production"}},"0.0.30":{"name":"snowgander","version":"0.0.30","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.30","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"396627ed176a6a0c8bb902250acda90e8099dfed","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.30.tgz","fileCount":34,"integrity":"sha512-oUQ/H5Lrt5iCIs1WRSzwbmgVkF2ofD8QIHcSp+hXB6nkZSniuxa9BvgPM42PuaEv6u4s5dhosgcKCdmWRcyDoA==","signatures":[{"sig":"MEQCICrRsuJ7AAPZglwxRfxFsN1pLD54qUrM3YSFLTqoK3OsAiBbIQuwa5MzGmMhNedbhEAYlYQK3/kh5LtissZtKjIugA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":211163},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"d2009d966c2bbeb7bc028bb1637946b5e3738e6c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.30_1745647172958_0.2884511899670559","host":"s3://npm-registry-packages-npm-production"}},"0.0.31":{"name":"snowgander","version":"0.0.31","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.31","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"1432a2ca886e29d6953ccee5322b1670ac8beebd","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.31.tgz","fileCount":34,"integrity":"sha512-3HOpXFqlztiYOo/LVcvcr0Jyp/JkU985WOJVuPiKddmDjg2yRDPgnOennlSka+IEZQZeANRc9CcPMgiG6q1Gcg==","signatures":[{"sig":"MEQCIHVNcBpeEaFwkZSeQ3/EWV0xnbLuh5J876UNS5ZaV6UvAiAUDdeHLBdwUeqRKO+y1MzLYMqyMsLZh3SgPxZ9LtlJZQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":211927},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"d2009d966c2bbeb7bc028bb1637946b5e3738e6c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.4.1","@anthropic-ai/sdk":"^0.39.0","@google/generative-ai":"^0.24.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.3.1","typescript":"^5.8.2","@types/jest":"^29.5.14"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.31_1745675761002_0.5420903387280873","host":"s3://npm-registry-packages-npm-production"}},"0.0.32":{"name":"snowgander","version":"0.0.32","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.32","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"5ed2757e8a871a3d17ef95806ec561db7d6ea7b6","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.32.tgz","fileCount":34,"integrity":"sha512-5m7HkzbTBhSCb7SxTal4XT0tJ7QiBXf9ziGYN9+q020etCZeTXpdOlYvXI2THa+HwXxHK8UJkXvdqOjSWB/L6A==","signatures":[{"sig":"MEUCIDW8xteq5FvlrgwkERXv7vpBpT8MAo75nJ78/L3x4qBKAiEA/v0SZDG6fq+Tp9QTIfy5iemVafPC2PEf/1s1/kGdmVs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":234505},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"045a9ebfcebb178812886be60001c7907b3c3b1e","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.5.0","@types/jest":"^29.5.14","@google/genai":"^0.12.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.32_1746221756641_0.49151174803993625","host":"s3://npm-registry-packages-npm-production"}},"0.0.33":{"name":"snowgander","version":"0.0.33","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.33","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"5dfb112a71bc3b4c9e9cce47439d448fb06a0351","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.33.tgz","fileCount":34,"integrity":"sha512-hj/whTyju0e1axxXVIVGBrtDjTWBZ2DC/n0HgPBj1hvAOQ88uu0GkwBiO0sMOFlPFTj/QEbi4Kw+0Pfr6nek8g==","signatures":[{"sig":"MEYCIQDVNT145lidXIH+c4CGQKD9NeAU7jfWKOUja3qWs+CW/gIhALqpsSmuMNpQlJGG/7gmZqo32h7Wib0Ixn8iIH1eBV+2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":234484},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"55d9a29b3b9eb3c69348903f06c6b4b1ae6ff34d","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.5.0","@types/jest":"^29.5.14","@google/genai":"^0.12.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.33_1746229819852_0.16868506886568913","host":"s3://npm-registry-packages-npm-production"}},"0.0.34":{"name":"snowgander","version":"0.0.34","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.34","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"ecc0ad4bd07bd2724a844443d6c724496df38c07","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.34.tgz","fileCount":34,"integrity":"sha512-nTryDSTtw5a0ynAzb5dOFcja+04LAmH9fC62ae2PZDm3jHwes/yHYOFUG+C3z1M+5aRmJWwGmalT1Up5IzKxmw==","signatures":[{"sig":"MEUCIARLRWkPl4IKJvmftXvXXwPiYlVCSmv9n9cieDdpAbj3AiEAzFtcBLEHrAO5nr0lX1HA/A6J7qaPuvGwcjRFoFTsjMU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":234644},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"b8629227479369fb39296a649e3e6374236341a1","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.5.0","@types/jest":"^29.5.14","@google/genai":"^0.12.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.34_1746231263525_0.021332752677131195","host":"s3://npm-registry-packages-npm-production"}},"0.0.35":{"name":"snowgander","version":"0.0.35","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.35","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"e2faa735b1c1b5bc1d41750244a11ed31c0079b0","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.35.tgz","fileCount":34,"integrity":"sha512-vbKIKsOS0eTlvPtS3sA4/2jyI2WPSkUiU4x+aeYn2nsfSQQDBGL51VXNRSjJHqCsupe2GP1C7fABhIDcmdPvfA==","signatures":[{"sig":"MEUCIFpszdecN9UhiY5tz5I/ZnIkGmiTnegwlNwXRdUlAFTtAiEAvLARoqXdFGJhgyfGNcVsklMDJX5IMsZJSLCU6dD0LxI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":234674},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"b8629227479369fb39296a649e3e6374236341a1","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.5.0","@types/jest":"^29.5.14","@google/genai":"^0.12.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.35_1746231884132_0.6273656295368342","host":"s3://npm-registry-packages-npm-production"}},"0.0.36":{"name":"snowgander","version":"0.0.36","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.36","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"dd5afd5666567f2f87474435b46987077bbc21f1","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.36.tgz","fileCount":34,"integrity":"sha512-yApRVMM7ihf6JzdAOWLcNWL7UArVPhY0yamsR2TLJy8g3pgWPUheIAJr+AsiaI1kB3LzI8zwc5IANO60FQMj1g==","signatures":[{"sig":"MEQCIHuWFdLGvTVBZbVkUmCtDT6Q6p7EiEQR9YQxsm+isHt9AiB9Sq8jttDYUcD8a5uSqGVvPg8jryfQn5trK4RHvW6PFg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":235958},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"894b71ff64acd25fdcdc048ea47d3dcc880012e6","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.5.0","@types/jest":"^29.5.14","@google/genai":"^0.12.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.36_1746233412303_0.8047381586713469","host":"s3://npm-registry-packages-npm-production"}},"0.0.37":{"name":"snowgander","version":"0.0.37","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.0.37","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"211bcbd3f8a2bd4fcdadab19f1b05d54b848236f","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.0.37.tgz","fileCount":34,"integrity":"sha512-nuoJLWptMmjSUidAmXC7w1GakQ1nSHCE4iyMg+viDKLoctpntkCc2Xahs1vj/cyaFYRop3Im4WdIqZIZ/EU6MA==","signatures":[{"sig":"MEQCIEFe+5YUU5iTf0pJQF/TNPHu92AsRoU+5pz4xCatHzIIAiA8k8o+S3FRzNOIaATqKVPW1c8//ITapS2CqpAhpFghHw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":231397},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"7071c50f5fa24cd20374cb988eaa3061fd11be61","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.96.0","file-type":"^20.5.0","@types/jest":"^29.5.14","@google/genai":"^0.12.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.0.37_1748296239518_0.7794851746536124","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"snowgander","version":"0.1.0","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.1.0","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"c4ec0f19a3bfabd2029710b0f5775ebb3b8431fe","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.1.0.tgz","fileCount":34,"integrity":"sha512-NsMZBv53u+vuFkLoLeF8qE53Lve/cxylEyJcJ+h2xBkLH3Nn3b5bu+AfiPpbyocK9zP3jhwsvRaDdjkli91Hjg==","signatures":[{"sig":"MEYCIQCSQ6HpafsG2TkdesbdJSj9DfMiUXZg6aJ+NX2Hzi266AIhALmKi5EgSw71KItMOCWceL19nwB/ZA+gZOqFOtatgmrc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":243549},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"ca8e30c715706e103c4988ee9374759a938531c0","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","file-type":"^20.5.0","@types/jest":"^29.5.14","@google/genai":"^0.12.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.1.0_1750132745125_0.5010032469425791","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"snowgander","version":"0.1.1","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.1.1","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"c2092bc503a06abd5446f542ac7d3a8ab564bc8e","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.1.1.tgz","fileCount":34,"integrity":"sha512-1FOiqThLY8VlPx6nVnx15MSx+wdfzRLy6yxnSI5gQpCE8Amt+b7VOASY4nY9ul+Ji0oQuMBjM4HyiEVx9VtGNQ==","signatures":[{"sig":"MEUCIA2qs3je45mhkHENs3HVdZMqVeQjgbXHp687zTrpo2dRAiEAsyzHnXspUYyvbNeU9pmCKY3TYLPLi1DuGRbjGoMFWqk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":251752},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"ca8e30c715706e103c4988ee9374759a938531c0","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","file-type":"^20.5.0","@types/jest":"^29.5.14","@google/genai":"^0.12.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.1.1_1750176955491_0.9918683733284175","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"snowgander","version":"0.1.2","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.1.2","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"d3bf3861fb07fda12ee5019fa902c350fd3341da","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.1.2.tgz","fileCount":34,"integrity":"sha512-iRc1YKFF4cDhTCEyCHbP4gzQW/0kjUHyGKrGgQjNw6c0U6vUuRixHRK1VlXlA7z4XtiUOW1z8eChLZHT19fUdw==","signatures":[{"sig":"MEYCIQDT7rhQwN8bE4wF/hgAXSn4+ilHH5P5RKugcVpkw1A17gIhAPEyfwTPYOQu7nfglf4lopbMzJB9ikimItRlzc2tkZwV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":251919},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"1b4d391249ea13b368f987bf12c9d7bf98d8be0e","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","file-type":"^20.5.0","@types/jest":"^29.5.14","@google/genai":"^0.12.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.1.2_1750184779503_0.9356929248637176","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"snowgander","version":"0.1.3","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.1.3","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"f470f51f287879b37f8edc50c649c6f6e5adc327","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.1.3.tgz","fileCount":34,"integrity":"sha512-nvCuLVjc3Ae2xckprp8VERscQGedFb756wDv1/JJS8hg5eJzXUa/d0CnaNbHnlywkbp7zt9e2on4lE6eN4FRPA==","signatures":[{"sig":"MEQCIG80DvI/s9ESjZGqx7bzpYnVmoUWbRP1Qvbu4PLA2gVtAiBuz90sWPWuRho13AWLwAI1wt68sM3spK2DEDubWaQmug==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":257752},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0296eedcc3160c6c5c564d861c31c1f92a15eb5e","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","file-type":"^20.5.0","@types/jest":"^29.5.14","@google/genai":"^0.12.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.1.3_1750216563095_0.11502145890945648","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"snowgander","version":"0.2.0","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.0","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"fcdce113ede7547c6888cd5f8451a1ac24ea26e1","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.0.tgz","fileCount":36,"integrity":"sha512-Bs8aoDy92OsjTfHi42e4JRxYsdM3ra+/I+yr3n4fLh5OaGlhfssF08K90zqeADnZ40V1nNVxMfMGag8P5T8czQ==","signatures":[{"sig":"MEYCIQCZvxwYDATQrl/Rd0i+29jGfklh8D4EUleAWv4R6baG9QIhANs2IDrkYNmWuyH5bNF85N/Q5z9gfJX3e+ZmO+gmtiMg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":305396},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"c78811d0135c2c289dead5dfde822c556bd6321c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.0_1750265548151_0.1514421685356966","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"snowgander","version":"0.2.1","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.1","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"1b61f5166270b07e236ef2fa00275f46892e90fe","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.1.tgz","fileCount":36,"integrity":"sha512-If5Nxblf9Dyq49Oj7ctHksR/Fa6RwDUcgUuEvmFf+Xv3ppQFu6MDgOyVfUV1BeDmnPe/yYszE1JhIve6uJ/6qA==","signatures":[{"sig":"MEYCIQCpx4epccJw41LsHszR4y+/gf3rYoa6Vgp6M7Z4fzpNAgIhANHbUGX4a+8L43mq4gYLQ1y0ag6DLct5ABPDC5Sh1hIu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":308216},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"ab0cf185c454088592a8c02ad9c273cb1fa93851","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.1_1750266147211_0.9628235088621686","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"snowgander","version":"0.2.2","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.2","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"439a5c42ae84c2a2a36e23e5eab941906de7880a","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.2.tgz","fileCount":36,"integrity":"sha512-b1O49VI/AEVic8TzpXN4JYT5vsY4cV6C3lFYdmJaUrx5n/gdnmuZISLqI+7VNK/ADXgL1bGVHwpyn+3xYnZXOw==","signatures":[{"sig":"MEUCIA+xR9PmM0fHII37mtmmg13UCm1XQANsCisEn80DIlojAiEAxITy4MdjGdCLFA5c3IoVkRYnHj+2s3++fsuD1yWn8Nc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":307863},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"c2bdd26f6c29d25f1505c5179088716deb9329f7","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.2_1750266412051_0.3016459631445121","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"snowgander","version":"0.2.3","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.3","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"61bdfb6d4281147ea9140b2b5ec5551919bce8bf","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.3.tgz","fileCount":36,"integrity":"sha512-+Qphe4/fmMWGqH0z5Rew+WNBvkj+pQxJC9asOZ5PvN6jx3gf+mBEVVNxjCOVbhFUBb1myAKhbR4xmAdc8xwO+A==","signatures":[{"sig":"MEUCIQDvlpKi0yrfmWb1FbPMw1WxqP/PI6SwkFLOH7QO7nHGXwIgIYKlGl5a6Lxq1Juyhz3BymEeTT+jyFmQDxvOf/25wJM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":286573},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"c2bdd26f6c29d25f1505c5179088716deb9329f7","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.3_1750277920597_0.5429616768899024","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"snowgander","version":"0.2.4","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.4","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"3b4f0d175aa3797f4d8cd7a902fbe404c03b6fe4","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.4.tgz","fileCount":36,"integrity":"sha512-LVeJeRYkKaSKMun3xmefBIpDKnqcHv+VpQ7HBAZXEILVhSEytrkJ2n0lM9HsZX5xZZFGYSYCcmnBQbucmhwa5g==","signatures":[{"sig":"MEYCIQC0rcOL7XjRBpeJjr1O/8H0jJrAmJdA+cfRDzi9wcDVpwIhAN9VBfNkQZgg8VIwl14Wxnr7wQrHz9kwz8VM4e0p3f5h","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":292027},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"8c45a0bb4c6b11e3dfbfb93383f7eaf0d9c72037","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.4_1750281416147_0.632422262215578","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"snowgander","version":"0.2.5","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.5","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"df070d0bba78577e9b898274dbe4a9240576b1ed","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.5.tgz","fileCount":36,"integrity":"sha512-YSKs4BhIed8rgWYhPINrBNeka98RU5xZiXwZvUXgd5Edu1cj2k45co6KloSSn4/HS+9vZ3ljId/ytHOr5ckjzg==","signatures":[{"sig":"MEQCIEyYcmg1P0nf2F44djEcFSU68dc4X6bqhLdzA+2nkjI9AiAtzf6i/aoRAoZ6+VFWoYoTSXHgQV/2UxNknUv9g/YBrg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":293187},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"3cbb55668876351f5f8446a36de2e1b46f6ea71b","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.5_1750282211781_0.20729375845301945","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"snowgander","version":"0.2.6","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.6","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"179db36ebbd50bd8d40540de04ffa56c16b3442f","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.6.tgz","fileCount":36,"integrity":"sha512-hzMxeZjeSreMie3ncjNa0WsAaA699hS936i1wy4aP+M2JxLIcusB5K1gs7i9XSVuYyYXNyXv/sY/9FuKafABVQ==","signatures":[{"sig":"MEUCIDdUTVn/Te0vbPXMUL6fvxaAGCIMLXdaBM5hyt71GdqHAiEAwSk4JkuwMD0jv9qaFeM+Zokw+hVw/wODVXaC7d6yl+s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":293226},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"3cbb55668876351f5f8446a36de2e1b46f6ea71b","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.6_1750283266213_0.14634544833615837","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"snowgander","version":"0.2.7","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.7","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"86249512203c11ae35560d6d3ac6eec8fe5fbc6b","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.7.tgz","fileCount":36,"integrity":"sha512-K48fSsLossLsfnODYIpjIvzl4LpQC/O4EOoXYgfZAbxNbjhG7TR1W5cSN1MBtLyDCN3zQginRHN0SPaskaQJUw==","signatures":[{"sig":"MEQCIHDiMd26/I9t69wr5fpQw35ajvuGP51lFiULYhytrreHAiAb3fhs6pWthsdy8fM582QxjZeFBUMfFnJ8/U+ESWCAOA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":292698},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"78a070ac872da67f2a025e1988ad4e541dc0ae63","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.7_1750308292781_0.237059448439072","host":"s3://npm-registry-packages-npm-production"}},"0.2.8":{"name":"snowgander","version":"0.2.8","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.8","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"8259d9e9aeba6166496813f13e7bdc6c46f6435f","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.8.tgz","fileCount":36,"integrity":"sha512-Lx7u5UeYQPul+QnODtahJLQ/PHQ15za/XxM2dpMP+JGb+1MuQcEysYGAxd1Zoopi5gG09BxQbUgBmBAp63p0+g==","signatures":[{"sig":"MEUCIQDG/VgViE6ZjmsnIXVIw42SmbPY2YqtfNvrWdoMTH/W3AIgEHSHiGL6P4owP9dao5+yeQQuTtrv0G0D/oeLvLsurZM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":294334},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"086a8695d2488580c64041e340e7e9c957481608","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.8_1750350221635_0.06844969943230295","host":"s3://npm-registry-packages-npm-production"}},"0.2.9":{"name":"snowgander","version":"0.2.9","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.9","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"d27fb68722055b9f83ac412050a25af15b760e78","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.9.tgz","fileCount":36,"integrity":"sha512-DS1xPu8fSUQ8/W7qX/4yaDxyV98UoaIC5VxDtIdx1d6MSfQGAyUdyR71S4X3Pstkfkod1AcFCmooEXiktUpZTg==","signatures":[{"sig":"MEYCIQDDgg6ib/trn1RtJolJ7mgUEtRyPNw/3n/ikKki5go9fAIhALD95XbGYEa5JPK/S1u359YZHiQFs+BFs1kK1wkKT3R5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":294361},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"5d73f61e5a8c39e590a9e5352b1bf989f2535117","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.9_1750351381740_0.31830830047936454","host":"s3://npm-registry-packages-npm-production"}},"0.2.10":{"name":"snowgander","version":"0.2.10","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.10","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"940735d7e72a8f14caaeaf953e26c238e6fc4d5d","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.10.tgz","fileCount":36,"integrity":"sha512-Hzu+G4WYLPbRzI8MlrYYace+3q+CBbLiV+LkCoRX3bnHrbacE32wAG/0JVpcM++thYK9BbfpGQ7WLGDcAoIRyQ==","signatures":[{"sig":"MEYCIQC14KckjHvElFh6fQULqmZq6W2mKcpcUN+zXmihKaqnUwIhAJHn/uuPyzDd2CZzeDMw08PqmWf6lg8vztNeSP16b8Fw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":294778},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"c1b3f4c5e42732443e4fbc60ee0dad95f77332a4","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.10_1750358624802_0.7405542242215057","host":"s3://npm-registry-packages-npm-production"}},"0.2.11":{"name":"snowgander","version":"0.2.11","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.11","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"1814d3d48b8711258eb10ffbea71935662b7e582","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.11.tgz","fileCount":36,"integrity":"sha512-n7bIhPWWMTrDXC5zJzUlxyukE7lI2diFQegNxtPpfIkruCO4LhCpEtJeeRcG/mx/karvtDssLjRayUjZxrKSGw==","signatures":[{"sig":"MEQCIDOwjd+eyD7voyJJf1TX+dnpn7y3Y8eqmkivCar4FD+PAiBDwvHY5EG+RASduiDycNGLLnSTXH4k6cYGHvanwSrKEQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295536},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"c1b3f4c5e42732443e4fbc60ee0dad95f77332a4","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.11_1750366080546_0.48744135710895864","host":"s3://npm-registry-packages-npm-production"}},"0.2.12":{"name":"snowgander","version":"0.2.12","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.12","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"2dd2d84d4a325d82721a32d51c6772d7695e5030","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.12.tgz","fileCount":36,"integrity":"sha512-iAaRWdtw7HmKQ0RUOWbsJr4GKhdfG5QTJpMX7BWEI2jwstGOu75h4Li9k8RSt9zG1IaR2kCZE5mLpmD/O+wwkw==","signatures":[{"sig":"MEYCIQCQTkmA5iNjX7mpRZ5TaKMXTXydDyPFTo9way9WM3EjeQIhAIOiRSf5c4dkIVnFiGmfTLPIDR1mNMOWFMueWWJoKMJd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295612},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"39aa7952cca4345e0184ad8e61302b349028540f","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.12_1750398441994_0.09430249605846464","host":"s3://npm-registry-packages-npm-production"}},"0.2.13":{"name":"snowgander","version":"0.2.13","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.13","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"f7f0cfffcf7011e21dd0a7d6bf178015bc3bfcbf","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.13.tgz","fileCount":36,"integrity":"sha512-oDGvObeiDtLTwJtvz6pKlxmTBIpAdOncPXIDPNVQVbkMydFiOdDZh1vt9nrs5J7ypxqSmHyiJFBGbuN2zBT6QQ==","signatures":[{"sig":"MEUCIQCWaNHyMm9XCwP5V8FFA2R/NtgCSck0JH6WasUFeY+2BwIgMhRqsvCj29J422Qaq5FS7YOqneuZFhcsZaTXfKYIIXM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295985},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"39aa7952cca4345e0184ad8e61302b349028540f","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.13_1750436253430_0.2629887949401901","host":"s3://npm-registry-packages-npm-production"}},"0.2.14":{"name":"snowgander","version":"0.2.14","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.14","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"cb9490ebb48e6bdebc6ec2cfe69b6eaf5f306b60","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.14.tgz","fileCount":36,"integrity":"sha512-y1GskKuYrFXukOj4GrxyZPXvRxfOBlfggDynlQto0oENud4OyC+gb/Nt+EPFQAfy7+6LU7yMzXjRXppADRBFug==","signatures":[{"sig":"MEUCIQD94YikNxMWVucoy+F5C9Efk04KfjMzV/rgVRe1inXkxwIgVYCVZvbz0mVhXRzIpiEtMcpy2rUlvf8Z1TjuoaOEoZg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":296207},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"39aa7952cca4345e0184ad8e61302b349028540f","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.14_1750437175652_0.11220207739563048","host":"s3://npm-registry-packages-npm-production"}},"0.2.15":{"name":"snowgander","version":"0.2.15","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.15","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"d331a000835d223c752e6c54fe846d750a833d4d","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.15.tgz","fileCount":36,"integrity":"sha512-hrQfNysxPoxzlynSXRZC8I4b7HK8ObPyaFWU6pi1CY6yiK5XnG6z6GPzdK2U7dVuMDXsS1SClzpD0ZlQjagMuA==","signatures":[{"sig":"MEYCIQC5AQA0oO2mT4lHlx7Z4kbklIysibJ530R2FW3E4wM2aQIhAIVhOMLjnHg36AGlZztiB5ary5dSBzLgQi/IdS6f5nG1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":296217},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"39aa7952cca4345e0184ad8e61302b349028540f","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.15_1750437461600_0.7780135170485949","host":"s3://npm-registry-packages-npm-production"}},"0.2.16":{"name":"snowgander","version":"0.2.16","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.16","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"a2f8345b4512a787a1d9d825f988a40047cc47a1","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.16.tgz","fileCount":36,"integrity":"sha512-0UDUQzlGM87iQa4F2s9sAKp2UHjb7EKZmWA3uVq1xFHwC6nn6iStDnioj6/y66cEiAuwMzC0gGxAbP6IOhkfWA==","signatures":[{"sig":"MEUCIQDaqZ3dQ5Ou+4ntmfidWIbRPggRTyEBF4IIo7nCKcWdCAIgaXWbBYMSCj8Yb81p1w8ROgTYWuwqQipldphPDKQPVcs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":296312},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"39aa7952cca4345e0184ad8e61302b349028540f","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.16_1750438117511_0.6886360424553546","host":"s3://npm-registry-packages-npm-production"}},"0.2.17":{"name":"snowgander","version":"0.2.17","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.17","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"f007642be998a70683678be72875c37f9deb2a1e","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.17.tgz","fileCount":36,"integrity":"sha512-5qZh20jfAHakCbbyrLKDgaGpJ/hNBB3y+SQbkvAA1aMz+fB+He5PoYGXbH5hvZjVjPM/wAw5xROJQ6m6oAgk/g==","signatures":[{"sig":"MEYCIQD57y5FJqiiyDst/W6jex52uJIRGhyuQhbWM6vYZzSCMwIhAPY7NeNr0it6iAFqPtzxueg6E27xBG3TKFo/6ywLtYB6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":299050},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"7f1f649b520bcc92cb9734d55099c905f85608eb","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.17_1750440465022_0.5544400676645913","host":"s3://npm-registry-packages-npm-production"}},"0.2.18":{"name":"snowgander","version":"0.2.18","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.18","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"cfb723506c891e36bc24499cc2a8a8eaf16270e3","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.18.tgz","fileCount":36,"integrity":"sha512-LqDytNOxrMKPBhV2MFB2mM2GlAOR7lx6qpPsMpy9wnqqNa1E3e0QpkYpwcRN5CJkr9hYyHL7NqUHx6FpIFMz7Q==","signatures":[{"sig":"MEYCIQCpo+Ld4cA6YWR/zj3J6ORf3YnFRjgX2lh2MjZ90iVTzgIhAIvxFcwBQjfG48UgjG1YfO5+R0oqwYZpbAL/g7TD3vGm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":299061},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"7f1f649b520bcc92cb9734d55099c905f85608eb","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.18_1750441860852_0.6837506246574243","host":"s3://npm-registry-packages-npm-production"}},"0.2.19":{"name":"snowgander","version":"0.2.19","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.19","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"c773e0e2ccf110cc1789e05e3780a706a2acb41d","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.19.tgz","fileCount":36,"integrity":"sha512-zJhAT4mzQ+fh7IjIUjCs4eqziVwmrfKryJJv6bhd8+OwmUcu4m5Cqfw6hbo43VCJFhfD4c2P+ajgPbAA5Yhgyw==","signatures":[{"sig":"MEQCIEFOADDzMzjK2jKsDBuTQTPpoTjTrwlPjGobRzE+Rx0NAiAflhX6BxaoVEnAyQ5yHw21Rb5uPTdkvOtG4ZJZD5ByDg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":304165},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"7f1f649b520bcc92cb9734d55099c905f85608eb","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.19_1750447115974_0.4937923478391648","host":"s3://npm-registry-packages-npm-production"}},"0.2.20":{"name":"snowgander","version":"0.2.20","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.20","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"6320dcd8db352bb17925d29c08cab75a3928b63b","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.20.tgz","fileCount":36,"integrity":"sha512-gNxjydRfWKrEpDMEfgiy9d7G47HAoDKLVea7vp47c+5wvpeUZ+YV3Kf728d9uMiltgsUFyuE0C9asfZut/UoDw==","signatures":[{"sig":"MEYCIQDbkrQKU55DvbNYrveLKufKUNEge9yPByiE2EwQ8P8D9QIhAO9Y3t5I61VQFyco+Nd+sg11vShyvbybunLRsnR9hiLX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":306550},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"7f1f649b520bcc92cb9734d55099c905f85608eb","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.20_1750448397143_0.3479442750335535","host":"s3://npm-registry-packages-npm-production"}},"0.2.21":{"name":"snowgander","version":"0.2.21","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.21","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"8a13798b9f27942d928ec53f80054b7fee2012f3","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.21.tgz","fileCount":36,"integrity":"sha512-2K/3TlRbVSwR7CVNq48WukbO6fhMqJ+81BftnNS2puxV7q4WG605b7ELglIQ8rsPTPk+7DGOzhse05Q6JtVTfg==","signatures":[{"sig":"MEYCIQDvsBhSZQnuObGIg5DZ3ZfCQEWs9hW5SrDhX2Ki3PYT0AIhAJX4KI9dg9AwIfF1iuIgyD9EQqOMxeHllPfZFd9dd+/W","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":306870},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0e9b573c1d0fc582c708b18187d3e2366df99c65","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.21_1750450093627_0.24085837882365535","host":"s3://npm-registry-packages-npm-production"}},"0.2.23":{"name":"snowgander","version":"0.2.23","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.23","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"1ae5461044aa0359e7ea7b070fc1f6c17c07a320","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.23.tgz","fileCount":36,"integrity":"sha512-fBN9ScSruBLHla5sYYuRYPHDw3Xyk39dSEQ0UUInR3fIOearVVQAUc1N/leB9Y49XBHVxOZS8fIkX1xlSWfOTg==","signatures":[{"sig":"MEQCIARUBy4AgdEd27aupRXX7pEhsUnK+ztnhNQgJfOXeHgCAiAVNqgzXsvuLakBdkcqiDcSrVH/vRlqS7nZ/grwQeHu3g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":276467},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0e9b573c1d0fc582c708b18187d3e2366df99c65","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.23_1750453089442_0.046056067398288825","host":"s3://npm-registry-packages-npm-production"}},"0.2.24":{"name":"snowgander","version":"0.2.24","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.24","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"3fdc53763406e736805187d9303843b363d1c9b5","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.24.tgz","fileCount":36,"integrity":"sha512-5kFxMdBhLM14sbpm9mSmjoADMkiJhIX4UyfGagOvjKAAMYy+tiUH0CM+A2Bv2q5ss336hExsNCIrVxPXEP4hQw==","signatures":[{"sig":"MEYCIQD/u9sOrYtqqT2KcT51njg+ABaK3H8EUAkJWiCTGpZ1jgIhAM6zO9dCgDpSuSIuVzueSihIY4B50hvY6BwTyDTaln8Q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":279453},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"f3d5cfee8dd95482685386b4fd6b7d0459b6ec6c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.24_1750522163124_0.07468062613786808","host":"s3://npm-registry-packages-npm-production"}},"0.2.25":{"name":"snowgander","version":"0.2.25","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.25","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"634cc1b50dec5ba7a76e205eb0d8ef582d4d4bd0","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.25.tgz","fileCount":36,"integrity":"sha512-8P40NXfoM2tVIN2+u5lobBXqHXAYjXJjLDAklRKqAkpcrSdWbJgZNQi8Ckd18ykvUSshoiXk/jfEfkpDOTDUXA==","signatures":[{"sig":"MEYCIQD9R041IrDlQLEe2RN1gVnEZCqFSWcHLuTza/juMFyP2gIhAJCBBt09hejivEjd8+1MQZtDDWrAf1AqVY+J6/+f65RN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":285808},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"f3d5cfee8dd95482685386b4fd6b7d0459b6ec6c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.25_1750524497599_0.351113678223689","host":"s3://npm-registry-packages-npm-production"}},"0.2.26":{"name":"snowgander","version":"0.2.26","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.26","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"6b99b0a470096d7a1f22647374c27f0227be9b24","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.26.tgz","fileCount":36,"integrity":"sha512-NqIo6sVwGmBnkDionxCiuZlcBkeX9pT9jI90qglZbsZALa0WtUxY1EuPC1d//p3afxVc3Z/zBE8fN31NyUjf6A==","signatures":[{"sig":"MEYCIQCEIRrXWYv00Ak21o0UFum8zfkcqiI28MuKQJLB/lM9HgIhANIbubtIFygiXbAq565ftGEhMQjGssjX5I3sT/NmNLy7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":292014},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"f3d5cfee8dd95482685386b4fd6b7d0459b6ec6c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","actor":{"name":"troyharris1","type":"user","email":"troy.r.harris1@gmail.com"},"email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.26_1750525420026_0.09661183542538687","host":"s3://npm-registry-packages-npm-production"}},"0.2.27":{"name":"snowgander","version":"0.2.27","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.27","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"e2806b596e8c67e8d59552604ffe346daf98dc94","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.27.tgz","fileCount":36,"integrity":"sha512-WFgTE5/K1H8UD1jqNQ52z7pdyk+C5gG3lAiNdmA9u3Nz3Xu+4vccvZIGx/a4y4rBdY/q49nezA45MiIoZmV/uA==","signatures":[{"sig":"MEQCIClYFqN+hv0uKN+FwKnrmljujyU7x3mJJ+pRquHLvMrbAiBBjVku+9m1ny5Z8w8Gzqx4kOALmzjGCc9DMH/qW9Wj+g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":292045},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"f3d5cfee8dd95482685386b4fd6b7d0459b6ec6c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","file-type":"^21.0.0","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.27_1756652498099_0.7732590343144665","host":"s3://npm-registry-packages-npm-production"}},"0.2.28":{"name":"snowgander","version":"0.2.28","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.28","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"6eb4ae863aa109e69c1743b2161038d432785f1c","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.28.tgz","fileCount":36,"integrity":"sha512-nBUQDLqGEnedQacwVAwzNBOX6ahOyAXmHG6aUCVifih4F2P8CWOc17ZVrnACbukVPvxAg0FQxECrORQ9YbCP9Q==","signatures":[{"sig":"MEQCIHqc/ZPYZyh3PvXhsil0ioTflHGBcf2CTdhNJU1J3P3SAiAs3j9pIcjPP1gCIErqO7c5Guuqboxef9Aqg4UN+Hc8fw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":292045},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"f3d5cfee8dd95482685386b4fd6b7d0459b6ec6c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^4.104.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.28_1756654202752_0.09770692490765231","host":"s3://npm-registry-packages-npm-production"}},"0.2.29":{"name":"snowgander","version":"0.2.29","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.29","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"40d4fe3151a1dd7cc48d0d55dc385ae2e0c1564f","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.29.tgz","fileCount":36,"integrity":"sha512-gA5QHDeXxCLLcLJ7hvO+NyApZibpjsIMp2DCr/XNOAdoYjasBN+gYAeX3fm9BK2YHXiQ2ydnB0Z/UF6vZnpG0w==","signatures":[{"sig":"MEQCIEXmw2QFxV1z1z5tU//GsyxaZy9t2HF4L0VO24MKJMjqAiBGcJe2s3whTkM+3np6d5TqqsQ53KwWARQNgf5ZEZ8oXg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":288459},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0f197ef62673ef5b64ad81e8515e9d980451f070","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.29_1756737960767_0.6117876793067023","host":"s3://npm-registry-packages-npm-production"}},"0.2.30":{"name":"snowgander","version":"0.2.30","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.30","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"b3e4bd6de77c84000e3913af3ee269c3ba215ed5","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.30.tgz","fileCount":36,"integrity":"sha512-ucIeDWgC/xBIgifaFfqP8RrW4MExKZK8O3p6stNh7dGEbx8AzQ3jutVsJKCnxRQ3M5fUoQ/O8U3QDLxsatlstg==","signatures":[{"sig":"MEUCIGqr18r6yRu9OQGs8XZkGLMYVK+wL1n/DOKlpIwvBEqUAiEAwNCAgfchkuDaeTKDg81lB9td2Q9hutLnIe55nCUyAWU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":293140},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0f197ef62673ef5b64ad81e8515e9d980451f070","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.30_1756739912732_0.4885671637882003","host":"s3://npm-registry-packages-npm-production"}},"0.2.31":{"name":"snowgander","version":"0.2.31","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.31","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"e3f12be354ec29578faebf315a2e4a296aeefde1","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.31.tgz","fileCount":36,"integrity":"sha512-S/0ozjOoz60EDRqGCLezK1RbqdjXkBpFA2Klf+SMksKqp98aPV8KZ4cSvgpt9VNd8uTXapVU3nyKSk7c9y+GoQ==","signatures":[{"sig":"MEYCIQCoKtKYTuQJ4OU1FsilJsRqNGaoUHnEsCxIspcQ+SOjKAIhAIo4nAPbtFDrOtgZ7x3B46tQWKi0cfuqvX96IBMTQCbd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":293988},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0f197ef62673ef5b64ad81e8515e9d980451f070","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.31_1756740881981_0.7322353237076025","host":"s3://npm-registry-packages-npm-production"}},"0.2.32":{"name":"snowgander","version":"0.2.32","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.32","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"95e6484f248de3ce6a2da864afa3d4a94afb3886","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.32.tgz","fileCount":36,"integrity":"sha512-MxWrkW3STokUpy+tTVFKRFBLsTU+4o6EyKWmlHlDRpFQT7OxXnkLD5pKunp/PQuXAB982MsM+5eegJqK44A82g==","signatures":[{"sig":"MEQCIHk1d5iiOKo40mbCDCXTui+LNupO7xZIrDkDHv/IwgKeAiBemUCHG0fx67/2rIQKfGay+YcLL+gTmusQSzwxX8cuWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":294769},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0f197ef62673ef5b64ad81e8515e9d980451f070","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.32_1756742619697_0.7376540886932514","host":"s3://npm-registry-packages-npm-production"}},"0.2.33":{"name":"snowgander","version":"0.2.33","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.33","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"7c07166bc00aec58939ee03c2000e1cb70fbadc8","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.33.tgz","fileCount":36,"integrity":"sha512-hqDhNeTkHd6zux2m18viJe38gAuFUkPBTHQN8QB5FDF2nxFZMZluukn5ZLmp7xrFMP+p16dcVZoKR/4gYs+adQ==","signatures":[{"sig":"MEYCIQDZQjp6cdyqAHl5Syj+YE3cK0vdHq/sClcKa281ONDflwIhANvwyye+ZDdODNvX+Br6rZWVn4Vx1MahL6RslCFJlQ18","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":294779},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0f197ef62673ef5b64ad81e8515e9d980451f070","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.33_1756745448648_0.6416710346897767","host":"s3://npm-registry-packages-npm-production"}},"0.2.34":{"name":"snowgander","version":"0.2.34","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.34","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"73b937c8e2d12a520d10bb311578abe9bd1ace06","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.34.tgz","fileCount":36,"integrity":"sha512-2VoXTBEALXJkpooAc0dglCeYa1Qv8XGkwqDykoAmIt8j2+I7iGnyvQexKkUX4TV9Z2iUrlcaRY/C76BU5XSFIQ==","signatures":[{"sig":"MEUCIEauk5E02nemOcKuehv/Gn5RK2tM1K8QzizXMAdbBYPqAiEAiETqL+MsiEfGAbeGMo1OPuzyP0mrwF0i0xkJkjKbboU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":293819},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0f197ef62673ef5b64ad81e8515e9d980451f070","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.34_1756746413522_0.29166715216426353","host":"s3://npm-registry-packages-npm-production"}},"0.2.35":{"name":"snowgander","version":"0.2.35","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.35","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"d7a8d7f2500658164815ae0cdeba5adab9ff025b","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.35.tgz","fileCount":36,"integrity":"sha512-blmw/1EsQ6ry+rmulsApWbwZ3bXfz4TDzCpLjQJ9rUbuxjogMNgeyqVUKfDKUwhOFqnRCYDoBOqq8MR/w2WuZg==","signatures":[{"sig":"MEQCIBvF4XYAje6Wgi7nZIuW91OWRF7GChSon174htFUB8I9AiBNTEm1G8XFnJprQJZXc1zJibfmoPuOwGDkm5Ka+UHjcw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":276633},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"36ddc70df3b1f3449ce2834fed6e6d3292a267a3","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.9.0","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"22.12.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.35_1764109423007_0.07526607196594726","host":"s3://npm-registry-packages-npm-production"}},"0.2.36":{"name":"snowgander","version":"0.2.36","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.36","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"fb6c4cb70ff0c97ca4857a8f37c7d9aaca6c010b","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.36.tgz","fileCount":36,"integrity":"sha512-1M4Q/235HZmc5XfCAjkAqdqbrp1JYn9sjqUiSZWcGVMgkng2ZefYvHzvnJIt5quxj9SHn9RSNQ5no5/3a3vrHA==","signatures":[{"sig":"MEQCICihggb8/3zkwg5ji3472JwSESsR33ozLphyA73zr1N2AiAzfOwTcay/z2voDy5Tl4sSG/HMY96lqD3Etb3Fi/GwsQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":276629},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"a2f8349b32d27c704048e4de010356ae111d7e7c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.9.0","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"22.12.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.5.1","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.36_1764111754638_0.9015444938210047","host":"s3://npm-registry-packages-npm-production"}},"0.2.37":{"name":"snowgander","version":"0.2.37","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.37","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"ef582fc36a4bfa4c3981b9d67dde0af4e86f5f08","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.37.tgz","fileCount":36,"integrity":"sha512-mo3SRugBhEM8/5nii+m2ORLFH8zO9tE0XjdNZMZknDkX6JHl+bcf4B6TH7TrjJDyqYxvYWvIDVVRxbYPnYHXnw==","signatures":[{"sig":"MEUCIQCMLTiYrvXCJW3DYyLZNXRsH/U5nOMJRAwARIiTcRuarwIgThiTP/jk+MCqvhu3u8/KFaQ8bVdoVfsoBxzFqNCKrew=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":278718},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"5c88319bafabcb775d551ae9651d28768a95474c","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.9.0","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"22.12.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.30.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.37_1764113557124_0.7750621096590862","host":"s3://npm-registry-packages-npm-production"}},"0.2.39":{"name":"snowgander","version":"0.2.39","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.2.39","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"7970560247dbcfa6689f9eb7f74f428465a3904a","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.2.39.tgz","fileCount":36,"integrity":"sha512-iVt5XiJdi43y0tmd0Yh2/2pzc9YAQgh+DiOcBIHbqLiKeEIkdBZUJtvjuhiO9SsOQgCCH6uGcFsddDc94h43SA==","signatures":[{"sig":"MEYCIQDHVhDXoOnlwycPkgWs0ymnvCBPYAbGmGsHqnBahhqs/wIhANm/8PpqnTWcLBBVI1KJUev6Rrkq8VFnrzi3RX7bV35Z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":295201},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"a18dd8d38960e9a016d8fef21e01dcbe6f0615ed","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.34.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.2.39_1767204921308_0.19674745719472542","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"snowgander","version":"0.3.0","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.3.0","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"f649fe3d86ec5c6d5a41174e164afdcd8f2a66b3","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.3.0.tgz","fileCount":38,"integrity":"sha512-0KViW+U0bOhpPs9MNVm3t5oiuWGC9CpsYOCx7s8QJ2Oc12rsrXcfUOtDREA8CFrhkOSwIiyOHDk1D6mAArxKJw==","signatures":[{"sig":"MEUCIQDhL7TwsCk5bibRP5Iu1tPfsYDeusJ6pKaB66X4icFX4AIgcL5CBmH7T01DWgBRZKetD7IMTNrGLpDdg3GCBdCUZ4Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":307847},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0f2f324254b5b131a062dcd1128f7f71e61ff53a","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.34.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.3.0_1767384781546_0.5297212130640128","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"snowgander","version":"0.3.1","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.3.1","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"7e4bd3d5b9949eecc919536d9481332d8017602f","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.3.1.tgz","fileCount":38,"integrity":"sha512-F7/X8THCLbJZpAgj6NNuGExHBpDEeQlSYtmWNswqfJWtNTkubkQKFke3vMcIw9D6KN0LHwJqUvBhDdlTo1ZwzQ==","signatures":[{"sig":"MEUCIExhQ0H8TYiUNtMr/yNcXQDUZH4ZQc/N21Ceeq3deHnJAiEAiLNM9CifLvQr4eo2mbfXEnT5anCWpNqUaMGGkOrMVog=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":307743},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"16f9465556ec6189bc03b3a1bf5d98be45f9dd68","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.34.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.3.1_1767386712541_0.6170959606191395","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"snowgander","version":"0.3.2","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.3.2","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"2e942d6d0f670fa47db19734d84a41f46feded88","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.3.2.tgz","fileCount":38,"integrity":"sha512-JxQPfC1h5vttEJX/N+tqhIt+iCtlifB7/BF359fc9HvdItopbTMoTcSqE88/AkukXiihRdw9vuh6FNdtS5DkDQ==","signatures":[{"sig":"MEQCIG6z9SbPyKglM2V7j0bo2j6Es13m6PiW3qZcfQgTqxQhAiBcnsWK4NrHpeOhxTs2sa3mU993NOh2xctBL8fsFdIggg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":308873},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"16f9465556ec6189bc03b3a1bf5d98be45f9dd68","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.34.0","@anthropic-ai/sdk":"^0.39.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.3.2_1767392158832_0.21969237003147413","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"snowgander","version":"0.4.0","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.4.0","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"b1047ad8aed7a1eb4ab4009a94313474bf6a2007","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.4.0.tgz","fileCount":38,"integrity":"sha512-+Ac4soM+BOkggiS8wxDtdKc3QDAHzlLPQS+TR7cQLcpebdpF5hwOplOE6zQmgT845o98XgAIHsNOChQOwzmIHw==","signatures":[{"sig":"MEYCIQCr0wpffuV/x8/gAXhv51Mhz3YSPEmCuKrr/7HcpE+e4AIhAOTtFCq0+O+6UvmIVZheP5LQmOxGwuIH114WB+C3GoP3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":349590},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"01832179bd3bae10d850aca0cbf27b5b86b6e887","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.34.0","@anthropic-ai/sdk":"^0.111.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.4.0_1784230509705_0.24970104342126076","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"snowgander","version":"0.5.0","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.5.0","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"cd162477da87264b8adff975c2cbc87caa615b09","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.5.0.tgz","fileCount":38,"integrity":"sha512-+ksaM07o/BBIXbTQYwgddE8oTJ6ML31SRgeO0Wf9uCFpesWD2wceyxjIt/jt54PLMG21KkEX4em8/GLOwE8y0w==","signatures":[{"sig":"MEUCIQCT5rX+nFf2oL+OQV7MdnrGwKPgq51G4XSjIuh1dXWinQIgTS+NAByP8tLpUdZzQyuVRbE07Xijou/lOHkO6X0eezg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":366397},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"b22df766058b44f90c876ce7ef35dc6aa982c758","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.34.0","@anthropic-ai/sdk":"^0.111.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.5.0_1784478194886_0.841718339164971","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"snowgander","version":"0.5.1","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.5.1","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"88a94452400efcbea9da7779f30bb3d9e854c500","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.5.1.tgz","fileCount":38,"integrity":"sha512-sIVv9EM3ViRiQ1xq4qBM+HHHZy2U9lxzSzUJP+3NGUIRpfLBr8bfEt6BFhLpJs3XwfSsNWqXDwJafOjsu9Kfaw==","signatures":[{"sig":"MEYCIQDNlkuzAW9gE2eJrKGzejoB3IYMGDeYdIMDhhBzD8goyQIhALrvkVvfwmN8AQi+4x2ikWNBsnzBDtuTdvdV8DDGMh5O","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDGl2useBxKKa+opVp8leA8iF2NcgulwvH1tH+cgdmPTAiEA04dJn7icORQJjfN8FIqddjZRj8C3yKO5gW2dPg0T/OI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":380640},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"5dd98d2acf9937f087b1349845e0c4a8d2361bff","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.34.0","@anthropic-ai/sdk":"^0.111.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.5.1_1790456796647_0.058063196167454256","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"snowgander","version":"0.5.2","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.5.2","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"9ef30e6db28dd6ee636d05cee806654504ad3faf","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.5.2.tgz","fileCount":38,"integrity":"sha512-u++kDDW3WSgJUtw57srfCYG5fwji0+e52+A5DN5qjmgpYo7Bw8Mga92nFUoE+ZZ0vQfOL7nUviOrcU0eRpcRkA==","signatures":[{"sig":"MEYCIQDEiolqya1lyCtS60qJ2siZgvyzEJoXX/Ds2pF8Pd6+IgIhAIQ7KqR+f5UkYj9JCkow4sgyujKRQnZZdPZE+9gTPcIc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDK6Wi6Kf1CqJ1L4NJuGepsv/TcnTpV3ZBRiDUfa6Lo9AIhAN8sFh9zgUrHCbBRbwBZ4Hd+sNrMeDN6JcqQ95Qmyuon","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":401337},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"a9b8da7942e792373c34a39ca309b7d2cd497b33","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.34.0","@anthropic-ai/sdk":"^0.111.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.5.2_1790457828551_0.7163134148260102","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"snowgander","version":"0.6.0","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.6.0","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"a601eebe84ce83c15a609de548478dc8193f338d","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.6.0.tgz","fileCount":38,"integrity":"sha512-k3dfyYJ+72PJqNQAmuJeCqlNc5L6ik1DwDP9yepMlfVEk9eF/ZDTR+3V+FTlnl+MKgYWdo3YF2hdjeEWX/gS/w==","signatures":[{"sig":"MEQCIGEuhwuLMecCeREXMXjK62SaU79ByWYRY+YO81OFaIbqAiBhs2YwAZois24h3AsVpZR417soTPxq8+LYXBScXyDrrg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC75+vtSP1irme1v16/vaRdeGgRDP9RtbxB2aYCvqxDnAIhAP1XGXCBVhSzgW9v1THSLE6UIVKdICkwFWL2QWuT1TyZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":417430},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"32b26303c080828a039deab057754f2d5c7e5297","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.34.0","@anthropic-ai/sdk":"^0.111.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.6.0_1790459015278_0.22944748840889173","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"snowgander","version":"0.7.0","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"author":{"name":"troyharris1"},"license":"MIT","_id":"snowgander@0.7.0","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"homepage":"https://github.com/troyharris/snowgander#readme","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"e7dde08454336bd2f90a75ad9bd11c02d0870879","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.7.0.tgz","fileCount":40,"integrity":"sha512-WyZ1UCqWTX5im1vhT9EMaEhYxJ4DITH2LGa0GavOHlD1cLsl/I6j8LAhO9fw4qamNFjqH415i9G/di/dDYghMQ==","signatures":[{"sig":"MEUCIQDcnZH1dYYwdiulmhflbywDFX9iXsTw/Vet/PcdWFqJFwIgDkY94eOuv+eBAyoV1eCZDL4ytBQKIcY49IS/b3szIG0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIF9UANj58eisrwsSKzKMP7GqEf0TwA0W7lSjFQLAbIlVAiACp7UdUCfr7g3OxBRdiSbpCcGVL746RSGR5gQX/c5Y6A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":441949},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"3195e63b25ac0859cdd91fdf88c734b5a7d888a4","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.34.0","@anthropic-ai/sdk":"^0.111.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"tmp":"tmp/snowgander_0.7.0_1790520317155_0.2215106707296799","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"_id":"snowgander@0.8.0","bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"dist":{"shasum":"67c6ad00b913e5ab6bcdf84e9373d6dd1bae2955","tarball":"https://registry.npmjs.org/snowgander/-/snowgander-0.8.0.tgz","fileCount":44,"integrity":"sha512-f7PliyndillnvdN22RSGMDk71e+Bq4PSAinL0SozLkNI90AGAIjsZw5CrEczApp4kd7uol6qUah1zHikVrYdBA==","signatures":[{"sig":"MEUCIEOOZyUrijCevdS9q980i60914M+U7k4/AS69qcw2+HDAiEAvGBK+9sYZ6KJYaz5R+1+l+ZT6C3w4BSa7gTOBypXa5s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCkgOMtDh5JEl5J7fDKDTeTarryE+3ok4nF1svcG6/yfAIhAPa+W6SnMnOSgRgYDvPzw4jzRB+LmpcZIVSCEo+936Wc"}],"unpackedSize":520018},"main":"dist/index.js","name":"snowgander","types":"dist/index.d.ts","author":{"name":"troyharris1"},"gitHead":"e62a1cdc4cfcb94e227b8d0a15859f5dac7de5c9","license":"MIT","private":false,"scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"version":"0.8.0","_npmUser":{"name":"troyharris1","email":"troy.r.harris1@gmail.com"},"homepage":"https://github.com/troyharris/snowgander#readme","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"_npmVersion":"10.2.3","description":"Universal interface for disperate AI vendors","directories":{},"maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"_nodeVersion":"20.10.0","dependencies":{"jest":"^29.7.0","axios":"^1.8.4","openai":"^5.16.0","file-type":"^21.0.0","@types/jest":"^29.5.14","@google/genai":"^1.34.0","@anthropic-ai/sdk":"^0.111.0"},"_hasShrinkwrap":false,"devDependencies":{"ts-jest":"^29.3.1","typescript":"^5.8.2"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/snowgander_0.8.0_1790551305061_0.3083148022401849"}}},"time":{"created":"2025-04-02T23:26:15.445Z","modified":"2026-09-27T23:21:45.373Z","0.0.1":"2025-04-02T23:26:15.701Z","0.0.2":"2025-04-03T05:04:40.206Z","0.0.3":"2025-04-03T23:05:15.228Z","0.0.4":"2025-04-04T01:11:03.758Z","0.0.5":"2025-04-04T05:15:23.696Z","0.0.6":"2025-04-04T05:37:41.215Z","0.0.7":"2025-04-04T16:14:49.338Z","0.0.8":"2025-04-04T20:50:53.744Z","0.0.9":"2025-04-04T21:42:21.025Z","0.0.10":"2025-04-04T22:49:03.418Z","0.0.11":"2025-04-04T23:00:45.098Z","0.0.12":"2025-04-04T23:10:52.070Z","0.0.13":"2025-04-05T00:07:11.813Z","0.0.14":"2025-04-05T15:14:07.724Z","0.0.15":"2025-04-05T15:47:26.324Z","0.0.16":"2025-04-05T17:11:26.470Z","0.0.17":"2025-04-05T23:07:46.005Z","0.0.18":"2025-04-14T14:38:03.921Z","0.0.19":"2025-04-14T17:32:40.156Z","0.0.20":"2025-04-23T23:46:35.247Z","0.0.21":"2025-04-24T03:57:47.780Z","0.0.22":"2025-04-24T13:45:27.629Z","0.0.23":"2025-04-24T15:54:04.399Z","0.0.24":"2025-04-24T23:24:08.846Z","0.0.25":"2025-04-25T13:51:04.107Z","0.0.26":"2025-04-25T13:58:15.301Z","0.0.27":"2025-04-25T21:58:45.562Z","0.0.28":"2025-04-26T05:26:56.115Z","0.0.29":"2025-04-26T05:56:34.144Z","0.0.30":"2025-04-26T05:59:33.171Z","0.0.31":"2025-04-26T13:56:01.193Z","0.0.32":"2025-05-02T21:35:56.907Z","0.0.33":"2025-05-02T23:50:20.038Z","0.0.34":"2025-05-03T00:14:23.815Z","0.0.35":"2025-05-03T00:24:44.301Z","0.0.36":"2025-05-03T00:50:12.513Z","0.0.37":"2025-05-26T21:50:39.707Z","0.1.0":"2025-06-17T03:59:05.339Z","0.1.1":"2025-06-17T16:15:55.698Z","0.1.2":"2025-06-17T18:26:19.701Z","0.1.3":"2025-06-18T03:16:03.299Z","0.2.0":"2025-06-18T16:52:28.345Z","0.2.1":"2025-06-18T17:02:27.413Z","0.2.2":"2025-06-18T17:06:52.225Z","0.2.3":"2025-06-18T20:18:40.799Z","0.2.4":"2025-06-18T21:16:56.361Z","0.2.5":"2025-06-18T21:30:11.942Z","0.2.6":"2025-06-18T21:47:46.412Z","0.2.7":"2025-06-19T04:44:52.965Z","0.2.8":"2025-06-19T16:23:41.842Z","0.2.9":"2025-06-19T16:43:01.923Z","0.2.10":"2025-06-19T18:43:45.015Z","0.2.11":"2025-06-19T20:48:00.786Z","0.2.12":"2025-06-20T05:47:22.181Z","0.2.13":"2025-06-20T16:17:33.599Z","0.2.14":"2025-06-20T16:32:55.874Z","0.2.15":"2025-06-20T16:37:41.831Z","0.2.16":"2025-06-20T16:48:37.714Z","0.2.17":"2025-06-20T17:27:45.234Z","0.2.18":"2025-06-20T17:51:01.029Z","0.2.19":"2025-06-20T19:18:36.197Z","0.2.20":"2025-06-20T19:39:57.318Z","0.2.21":"2025-06-20T20:08:13.859Z","0.2.23":"2025-06-20T20:58:09.637Z","0.2.24":"2025-06-21T16:09:23.297Z","0.2.25":"2025-06-21T16:48:17.805Z","0.2.26":"2025-06-21T17:03:40.202Z","0.2.27":"2025-08-31T15:01:38.285Z","0.2.28":"2025-08-31T15:30:02.939Z","0.2.29":"2025-09-01T14:46:00.963Z","0.2.30":"2025-09-01T15:18:32.928Z","0.2.31":"2025-09-01T15:34:42.181Z","0.2.32":"2025-09-01T16:03:39.882Z","0.2.33":"2025-09-01T16:50:48.861Z","0.2.34":"2025-09-01T17:06:53.737Z","0.2.35":"2025-11-25T22:23:43.196Z","0.2.36":"2025-11-25T23:02:34.828Z","0.2.37":"2025-11-25T23:32:37.319Z","0.2.39":"2025-12-31T18:15:21.474Z","0.3.0":"2026-01-02T20:13:01.681Z","0.3.1":"2026-01-02T20:45:12.691Z","0.3.2":"2026-01-02T22:15:59.033Z","0.4.0":"2026-07-16T19:35:09.857Z","0.5.0":"2026-07-19T16:23:15.017Z","0.5.1":"2026-09-26T21:06:36.725Z","0.5.2":"2026-09-26T21:23:48.641Z","0.6.0":"2026-09-26T21:43:35.411Z","0.7.0":"2026-09-27T14:45:17.233Z","0.8.0":"2026-09-27T23:21:45.189Z"},"bugs":{"url":"https://github.com/troyharris/snowgander/issues"},"author":{"name":"troyharris1"},"license":"MIT","homepage":"https://github.com/troyharris/snowgander#readme","keywords":["ai","llm","anthropic","openai","google","gemini","claude","gpt","openrouter","adapter","vendor"],"repository":{"url":"git+https://github.com/troyharris/snowgander.git","type":"git"},"description":"Universal interface for disperate AI vendors","maintainers":[{"name":"troyharris1","email":"troy.r.harris1@gmail.com"}],"readme":"# Snowgander: AI Vendor Abstraction Layer\n\n[![npm version](https://badge.fury.io/js/snowgander.svg)](https://badge.fury.io/js/snowgander)\n\n---\n\n**Check out Snowgoose!**\n\nSnowgander is the core abstraction engine powering [**Snowgoose**](https://snowgoose.app), an intelligent agent framework.\n\nIf you're building AI-powered applications, agents, or workflows, **Snowgoose** provides the tools and structure you need on top of Snowgander.\n\n**Explore the Snowgoose App:** [**snowgoose.app**](https://snowgoose.app)\n**Check out the Snowgoose Repo:** [**github.com/loneyeti/snowgoose**](https://github.com/loneyeti/snowgoose)\n\n---\n\n## What is Snowgander?\n\nSnowgander is a TypeScript library that makes it easy to talk to different AI models (like those from OpenAI, Anthropic, Google, and OpenRouter) using one simple, consistent interface.\n\nStop writing vendor-specific code! Use Snowgander to:\n\n- Easily switch between AI models and vendors.\n- Use a single method (`sendChat`) for most conversational interactions.\n- **Stream responses in real-time** for interactive UIs.\n- Handle different types of content (text, images, tool use, thinking steps) uniformly.\n\n## How to Use It: The Basics\n\n### 1. Installation\n\n```bash\nnpm install snowgander\n```\n\n### 2. Configuration (Set API Keys)\n\nDo this once when your application starts. The factory holds the configuration for each vendor.\n\n```typescript\nimport { AIVendorFactory } from \"snowgander\";\n\n// Example: Load keys from environment variables\nif (process.env.OPENAI_API_KEY) {\n  const config = { apiKey: process.env.OPENAI_API_KEY };\n  AIVendorFactory.setVendorConfig(\"openai\", config);\n  // Also configure 'openai-image' if using DALL-E via OpenAIImageAdapter\n  AIVendorFactory.setVendorConfig(\"openai-image\", config);\n}\n\nif (process.env.ANTHROPIC_API_KEY) {\n  AIVendorFactory.setVendorConfig(\"anthropic\", {\n    apiKey: process.env.ANTHROPIC_API_KEY,\n  });\n}\n\nif (process.env.GOOGLE_API_KEY) {\n  AIVendorFactory.setVendorConfig(\"google\", {\n    apiKey: process.env.GOOGLE_API_KEY,\n  });\n}\n\nif (process.env.OPENROUTER_API_KEY) {\n  AIVendorFactory.setVendorConfig(\"openrouter\", {\n    apiKey: process.env.OPENROUTER_API_KEY,\n    // OpenRouter's baseURL is the default, but you can override it\n    baseURL: \"https://openrouter.ai/api/v1\",\n  });\n}\n```\n\n### 3. How to Initiate an Adapter\n\nTo get an adapter, you need the **vendor name** (e.g., `\"openai\"`) and a **`ModelConfig` object** describing the specific model you want to use.\n\n```typescript\nimport { AIVendorFactory, ModelConfig, AIVendorAdapter } from \"snowgander\";\n\n// --- Prepare ModelConfig (Example) ---\n// In a real app, you'd likely fetch this from a database or config file.\nconst gpt4oConfig: ModelConfig = {\n  apiName: \"gpt-4o\", // The name the vendor API expects\n  isVision: true, // Can it process images?\n  isImageGeneration: true, // Can it generate images?\n  isThinking: false, // Does it support structured thinking output?\n  inputTokenCost: 5, // Cost per million input tokens (optional)\n  outputTokenCost: 15, // Cost per million output tokens (optional)\n  imageOutputTokenCost: 20, // Special cost for image generation output\n  webSearchCost: 0.05, // Flat fee when a web search tool is used\n};\n\n// --- Get the Adapter ---\nlet adapter: AIVendorAdapter;\ntry {\n  const vendorName = \"openai\"; // Or \"anthropic\", \"google\", etc.\n  adapter = AIVendorFactory.getAdapter(\n    vendorName,\n    gpt4oConfig // Pass the config for the specific model\n  );\n\n  console.log(\n    `Successfully got adapter for ${vendorName} / ${gpt4oConfig.apiName}`\n  );\n  // Now you can use the 'adapter' instance!\n} catch (error) {\n  console.error(\"Failed to get adapter:\", error);\n}\n```\n\n### 4. Making API Calls\n\nSnowgander provides two primary ways to interact with AI models: a standard request-response model and a real-time streaming model.\n\n#### A. Standard Request/Response (`generateResponse`)\n\nThe `generateResponse` method is the fundamental way to get a complete response from an AI. You provide all the messages at once, and it returns the full response after the model has finished processing.\n\n```typescript\nimport { AIRequestOptions, AIResponse, TextBlock } from \"snowgander\";\n\n// Assume 'adapter' is an AIVendorAdapter instance obtained above\n\nasync function getStandardResponse() {\n  const options: AIRequestOptions = {\n    model: gpt4oConfig.apiName,\n    messages: [\n      {\n        role: \"user\",\n        content: [\n          { type: \"text\", text: \"Tell me a short joke about computers.\" },\n        ],\n      },\n    ],\n    systemPrompt: \"You are a witty comedian.\",\n    maxTokens: 100,\n  };\n\n  try {\n    console.log(\"Sending request to AI...\");\n    const response: AIResponse = await adapter.generateResponse(options);\n    console.log(\"AI Response Received!\");\n\n    // Process the response content (see section 5 for details)\n    const assistantMessage = response.content\n      .filter((block): block is TextBlock => block.type === \"text\")\n      .map((block) => block.text)\n      .join(\"\");\n\n    console.log(\"Assistant:\", assistantMessage);\n\n    if (response.usage) {\n      console.log(`Cost: $${response.usage.totalCost.toFixed(6)}`);\n    }\n  } catch (error) {\n    console.error(\"Error generating response:\", error);\n  }\n}\n\ngetStandardResponse();\n```\n\n#### B. Streaming Responses (`streamResponse`)\n\nFor interactive applications where you want to display the response as it's being generated (like a \"typewriter\" effect), use the `streamResponse` method. It returns an `AsyncGenerator` that yields response chunks (`ContentBlock`s) in real-time.\n\n```typescript\nimport { AIRequestOptions, ContentBlock, TextBlock } from \"snowgander\";\n\n// Assume 'adapter' is an AIVendorAdapter instance obtained above\n\nasync function getStreamingResponse() {\n  const options: AIRequestOptions = {\n    model: gpt4oConfig.apiName,\n    messages: [\n      {\n        role: \"user\",\n        content: [{ type: \"text\", text: \"Write a short poem about the sea.\" }],\n      },\n    ],\n    systemPrompt: \"You are a thoughtful poet.\",\n    maxTokens: 150,\n  };\n\n  try {\n    console.log(\"Streaming response from AI...\");\n    const stream = adapter.streamResponse(options);\n    if (!stream) {\n      console.log(\"This adapter does not support streaming.\");\n      return;\n    }\n\n    process.stdout.write(\"Assistant: \");\n    // Use a for-await-of loop to process chunks as they arrive\n    for await (const chunk of stream) {\n      if (chunk.type === \"text\") {\n        // In a real app, you would append this to your UI\n        process.stdout.write(chunk.text);\n      } else if (chunk.type === \"error\") {\n        console.error(`\\nStream Error: ${chunk.privateMessage}`);\n        break;\n      }\n      // You can also handle other chunk types like 'thinking' or 'image_data'\n    }\n    console.log(\"\\n--- End of Stream ---\");\n    // Note: Final usage/cost information is not available when streaming.\n  } catch (error) {\n    console.error(\"\\nError streaming response:\", error);\n  }\n}\n\ngetStreamingResponse();\n```\n\n#### C. Stateful Conversations (`sendChat`)\n\nFor building chatbots, the `sendChat` method is a convenient helper. It wraps `generateResponse` and simplifies state management. You pass it a `Chat` object containing the full conversation history and the new prompt, and it internally constructs the request for you.\n\n```typescript\nimport { Chat, ChatResponse, TextBlock } from \"snowgander\";\n\n// Assume 'adapter' is an AIVendorAdapter instance obtained above\n\n// --- Manage this Chat object state in your application ---\nlet currentChat: Chat = {\n  model: gpt4oConfig.apiName,\n  responseHistory: [], // Start with an empty history for a new conversation\n  prompt: \"Tell me a short joke about computers.\", // The user's first message\n  systemPrompt: \"You are a witty comedian.\",\n  maxTokens: 100,\n  visionUrl: null,\n  budgetTokens: null,\n};\n\nasync function haveAConversation() {\n  try {\n    console.log(`User: ${currentChat.prompt}`);\n    const response: ChatResponse = await adapter.sendChat(currentChat);\n    console.log(\"AI Response Received!\");\n\n    const assistantMessage = response.content\n      .filter((block): block is TextBlock => block.type === \"text\")\n      .map((block) => block.text)\n      .join(\"\");\n    console.log(\"Assistant:\", assistantMessage);\n\n    // --- IMPORTANT: Update your chat state for the next turn ---\n    // 1. Add the user's prompt to the history\n    currentChat.responseHistory.push({\n      role: \"user\",\n      content: [{ type: \"text\", text: currentChat.prompt }],\n    });\n    // 2. Add the AI's full response to the history\n    currentChat.responseHistory.push(response);\n    // 3. Clear the prompt, ready for the next user input\n    currentChat.prompt = \"\";\n  } catch (error) {\n    console.error(\"Error sending chat:\", error);\n  }\n}\n\nhaveAConversation();\n```\n\n### 5. Understanding the Response\n\nBoth `generateResponse` and `sendChat` return a response object (`AIResponse` or `ChatResponse`) with this structure:\n\n```typescript\ninterface ChatResponse {\n  role: string; // Usually \"assistant\" (or \"error\" if something went wrong)\n  content: ContentBlock[]; // An array containing the AI's response parts\n  usage?: {\n    // Optional cost information\n    inputCost: number;\n    outputCost: number;\n    totalCost: number;\n    // ... other optional cost fields\n  };\n}\n```\n\n- **`role`**: Identifies the sender (usually `\"assistant\"`).\n- **`content`**: This is an array (`ContentBlock[]`). Each item in the array represents a part of the response. Common types include:\n  - `TextBlock`: Contains plain text (`{ type: 'text', text: '...' }`).\n  - `ImageDataBlock`: Contains generated image data (`{ type: 'image_data', ... }`).\n  - `ThinkingBlock`: Contains structured thinking steps from the model (`{ type: 'thinking', ... }`).\n  - `ToolUseBlock`: Indicates the AI wants to use a tool that your application must handle.\n  - `ServerToolUseBlock` / `WebSearchToolResultBlock` / `WebFetchToolResultBlock`: web research steps and their results (see [Web Search](#web-search-and-grounded-research-openai-and-claude)).\n  - `ErrorBlock`: If an error occurred (`{ type: 'error', ... }`).\n- **`usage`**: If available, provides the estimated cost for the interaction based on token counts.\n\n**Your application needs to:**\n\n1.  Check the `role` (e.g., handle an `\"error\"` role).\n2.  Iterate through the `content` array to process and display the different blocks appropriately (e.g., render text, display images, trigger tool execution).\n3.  **For conversations, add the entire response object to your `responseHistory`** so the AI has context for the next turn.\n\n## Web Search and Grounded Research (OpenAI and Claude)\n\nPass `webSearch` and the adapter adds its vendor's server-side tools. You don't write tool definitions or run a tool loop.\n\n```typescript\nconst stream = adapter.streamResponse({\n  model: \"claude-opus-5-5\", // or an OpenAI model\n  messages,\n  webSearch: {\n    fetch: true, // Claude only: also let the model read full pages (web_fetch)\n    maxUses: 5, // Claude only\n    allowedDomains: [\"example.com\"], // or blockedDomains (Claude only)\n    userLocation: { country: \"US\", timezone: \"America/Denver\" },\n  },\n});\n```\n\n- **OpenAI** gets the current `web_search` tool, plus `include: [\"web_search_call.action.sources\"]`. A legacy `web_search_preview` tool passed in `tools` is upgraded to `web_search`.\n- **Claude** gets `web_search_20260209` / `web_fetch_20260209` on Opus/Sonnet 4.6+ and the Claude 5 family, and `web_search_20250305` / `web_fetch_20250910` on older models.\n\nResearch is returned as content blocks you can show to the user:\n\n| Block | Meaning |\n|---|---|\n| `server_tool_use` | One research step. `name` is `web_search` or `web_fetch`, and `input` is JSON such as `{\"query\": \"...\"}` or `{\"url\": \"...\"}`. OpenAI streams it twice with the same `id`: `status: \"in_progress\"`, then `\"completed\"`. |\n| `web_search_tool_result` | The results for a step: `results: [{url, title?, pageAge?}]`, or `errorCode`. |\n| `web_fetch_tool_result` | A fetched page: `url`, `title`, `retrievedAt`, or `errorCode`. |\n| `text` with `citations` | `citations: [{url, title?, citedText?, startIndex?, endIndex?}]`. When streaming, citations arrive as empty-text chunks (`{type: \"text\", text: \"\", citations: [...]}`). Attach them to the current text block. |\n\nKeep these blocks in `responseHistory`. On later turns the Claude adapter sends Claude's search and fetch blocks back verbatim, including the `raw` field with encrypted content. This keeps citations valid. Other adapters, and OpenAI (which uses `previousResponseId`), drop them.\n\nCost: `ModelConfig.webSearchCost` is charged **per search call**. `usage` reports `webSearchCount`, `webSearchCost`, and, for Claude, `webFetchCount`. Fetches cost tokens only.\n\nWhen Claude's server tools pause a long turn (`pause_turn`), the adapter continues it automatically, up to 3 times.\n\n## Anthropic Models: Thinking, Effort, and Sampling Parameters\n\nSnowgander stays a thin wrapper: to use a new Claude model (Opus 4.6/4.7/4.8, Sonnet 4.6/5, Fable 5, Mythos 5), just set `apiName` to the model string in your `ModelConfig` — no code changes to `generateResponse`, `streamResponse`, or `sendChat` are required. The Anthropic adapter detects the right request shape automatically based on the model string.\n\n**⚠️ One behavior change to be aware of when adopting the newest models:** `claude-opus-4-7`, `claude-opus-4-8`, `claude-sonnet-5`, `claude-fable-5`, and `claude-mythos-5` reject `temperature`/`topP` entirely — the adapter throws if **either** is set, not just both together. If your existing code always sets a default `temperature`, remove it (or branch on model) before pointing that same call at one of these models, or `generateResponse`/`sendChat` will throw instead of silently ignoring it.\n\n| Models | `temperature` / `topP` | `thinkingMode` behavior | `effort` levels |\n| --- | --- | --- | --- |\n| Claude 3.x | Both allowed together | `budgetTokens` → `budget_tokens` | n/a |\n| Opus 4.0–4.5, Sonnet 4.0/4.5, Haiku 3.x/4.5 | At most one | `budgetTokens` → `budget_tokens` | n/a |\n| Opus 4.6, Sonnet 4.6 | At most one | Adaptive thinking | `low` / `medium` / `high` / `max` |\n| Opus 4.7/4.8, Sonnet 5, Fable 5, Mythos 5 | **Neither allowed** | Adaptive thinking only | `low` / `medium` / `high` / `xhigh` / `max` |\n\nFor models that support adaptive thinking, `budgetTokens` is still accepted for backward compatibility and is automatically mapped to a reasonable `effort` level — or pass `effort` explicitly for direct control (including the newer `\"xhigh\"`/`\"max\"` levels):\n\n```typescript\nconst options: AIRequestOptions = {\n  model: \"claude-opus-4-8\",\n  messages: [{ role: \"user\", content: [{ type: \"text\", text: \"Solve this.\" }] }],\n  thinkingMode: true,\n  effort: \"xhigh\", // low | medium | high | xhigh | max\n  maxTokens: 4096,\n  // Do NOT set temperature/topP here — Opus 4.8 will throw if either is set.\n};\n```\n\n`Chat`/`sendChat` also accept these as optional fields (new — previously only `generateResponse` exposed them), so existing `Chat` objects that omit them are unaffected:\n\n```typescript\nlet currentChat: Chat = {\n  model: \"claude-opus-4-8\",\n  responseHistory: [],\n  prompt: \"Solve this.\",\n  maxTokens: 4096,\n  visionUrl: null,\n  budgetTokens: null,\n  effort: \"high\", // optional — new\n  outputFormat: undefined, // optional — new, structured output via output_config.format\n};\n```\n\n## Development\n\n- **Build:** `npm run build` (Compiles TS to `dist/`)\n- **Test:** `npm test` (Runs Jest tests)\n\n---\n\n**Ready to build more complex AI agents?**\n\nSnowgander provides the vendor abstraction. [**Snowgoose**](https://snowgoose.app) provides the framework.\n\nGive your AI projects structure and power with Snowgoose!\n\n**Explore the Snowgoose App:** [**snowgoose.app**](https://snowgoose.app)\n**Check out the Snowgoose Repo:** [**github.com/loneyeti/snowgoose**](https://github.com/loneyeti/snowgoose)\n","readmeFilename":"README.md"}