[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-skill-BuyWhere-buywhere-openai-tools-ja":3,"guides-for-BuyWhere-buywhere-openai-tools":231,"similar-k172wbj84mwfawa1krjnvymwfx864x8d":232},{"_creationTime":4,"_id":5,"children":6,"community":7,"display":9,"evaluation":27,"identity":194,"isFallback":198,"parentExtension":199,"providers":200,"relations":205,"repo":207,"workflow":227},1777995645703.245,"k172wbj84mwfawa1krjnvymwfx864x8d",[],{"reviewCount":8},0,{"description":10,"installMethods":11,"name":12,"sourceUrl":13,"tags":14},"BuyWhere OpenAI function tools - product search, price comparison, and deals as OpenAI function calling tools",{},"BuyWhere OpenAI Tools","https://github.com/BuyWhere/buywhere/tree/HEAD/packages/buywhere-openai-tools",[15,16,17,18,19,20,21,22,23,24,25,26],"buywhere","openai","openai-tools","function-calling","product-search","price-comparison","deals","shopping","agent-sdk","ai","typescript","npm",{"_creationTime":28,"_id":29,"extensionId":5,"locale":30,"result":31,"trustSignals":180,"workflow":192},1778005088200.7542,"kn726j5fjw2j85rbq4q37p1cgs864fd6","en",{"checks":32,"evaluatedAt":170,"extensionSummary":171,"promptVersionExtension":172,"promptVersionScoring":173,"rationale":174,"score":175,"summary":176,"tags":177,"targetMarket":178,"tier":179},[33,38,41,44,48,51,55,59,62,65,69,73,76,80,83,86,89,92,95,98,101,105,109,114,118,121,124,127,131,134,137,140,143,146,150,154,157,160,163,167],{"category":34,"check":35,"severity":36,"summary":37},"Practical Utility","Problem relevance","pass","The description \"BuyWhere OpenAI function tools - product search, price comparison, and deals as OpenAI function calling tools\" clearly names a concrete problem: AI agents need tools to perform product searches, price comparisons, and deal discovery.",{"category":34,"check":39,"severity":36,"summary":40},"Unique selling proposition","The extension provides specific OpenAI function calling tools for product search, price comparison, and deal discovery, which is a valuable and specialized capability beyond basic LLM functionality.",{"category":34,"check":42,"severity":36,"summary":43},"Production readiness","The extension includes a comprehensive set of tools for product searching, getting details, comparing prices, and finding deals, covering a complete lifecycle for shopping-related agent workflows. The client implementation includes retry logic for API requests.",{"category":45,"check":46,"severity":36,"summary":47},"Scope","Single responsibility principle","The extension focuses solely on providing BuyWhere API functionality as OpenAI tools, adhering to a single responsibility principle without introducing unrelated capabilities.",{"category":45,"check":49,"severity":36,"summary":50},"Description quality","The displayed description accurately and concisely reflects the extension's purpose and capabilities.",{"category":52,"check":53,"severity":36,"summary":54},"Invocation","Scoped tools","All tools are narrow verb-noun specialists (e.g., `search_products`, `get_product`) focused on specific product catalog operations.",{"category":56,"check":57,"severity":36,"summary":58},"Documentation","Configuration & parameter reference","All parameters for the tools are documented within the function definitions, including types, descriptions, and defaults.",{"category":45,"check":60,"severity":36,"summary":61},"Tool naming","Tool names like `search_products`, `get_product`, `compare_products`, `get_deals`, and `list_categories` are descriptive and follow kebab-case conventions.",{"category":45,"check":63,"severity":36,"summary":64},"Minimal I/O surface","Tool parameters are well-defined and specific, requesting only necessary data. The client implementation returns structured JSON payloads, avoiding unnecessary diagnostic dumps.",{"category":66,"check":67,"severity":36,"summary":68},"License","License usability","The extension is licensed under the MIT license, which is a standard permissive open-source license.",{"category":70,"check":71,"severity":36,"summary":72},"Maintenance","Commit recency","The last commit was 0 days ago, indicating very recent maintenance.",{"category":70,"check":74,"severity":36,"summary":75},"Dependency Management","Dependencies like TypeScript, tsup, and Node types are managed within the package.json, and the build process is defined.",{"category":77,"check":78,"severity":36,"summary":79},"Security","Secret Management","The extension requires an API key but does not hardcode it; it's expected to be provided via environment variables or client configuration, and the `request` method handles it securely.",{"category":77,"check":81,"severity":36,"summary":82},"Injection","The extension takes arguments as typed parameters and parses JSON strings, which are then used in fetch requests. There's no indication of arbitrary code execution from inputs.",{"category":77,"check":84,"severity":36,"summary":85},"Transitive Supply-Chain Grenades","The extension bundles its code and dependencies; there are no runtime downloads or execution of external scripts.",{"category":77,"check":87,"severity":36,"summary":88},"Sandbox Isolation","The extension's code runs as a library and relies on the host environment for execution, with no file system operations or attempts to interact with the sandbox outside its designated scope.",{"category":77,"check":90,"severity":36,"summary":91},"Sandbox escape primitives","The code does not contain any detached-process spawns or retry loops around denied tool calls.",{"category":77,"check":93,"severity":36,"summary":94},"Data Exfiltration","The extension makes outbound HTTP calls to the BuyWhere API but does not exfiltrate confidential data. API keys are handled via configuration and not logged.",{"category":77,"check":96,"severity":36,"summary":97},"Hidden Text Tricks","The bundled code and type definitions are free of hidden-steering tricks or obfuscated content.",{"category":77,"check":99,"severity":36,"summary":100},"Opaque code execution","The provided source code is plain TypeScript and is not obfuscated, minified, or dynamically fetched.",{"category":102,"check":103,"severity":36,"summary":104},"Portability","Structural Assumption","The extension functions as a library and makes no assumptions about the user's project structure or file layout.",{"category":106,"check":107,"severity":36,"summary":108},"Trust","Issues Attention","There are 0 issues opened and 0 issues closed in the last 90 days, indicating no outstanding issues or recent engagement, which is acceptable for a tool that appears to be stable and complete.",{"category":110,"check":111,"severity":112,"summary":113},"Versioning","Release Management","warning","The `package.json` specifies version '0.1.0', which is a valid semver but may be considered an initial or unstable version. There are no GitHub releases or CHANGELOG, and installation via npm would use this version.",{"category":115,"check":116,"severity":36,"summary":117},"Code Execution","Validation","Input parameters for each tool are defined with types and constraints in the schema, and the client parses JSON arguments. The `request` method handles URL parameters appropriately.",{"category":77,"check":119,"severity":36,"summary":120},"Unguarded Destructive Operations","The extension primarily performs read operations against the BuyWhere API and does not involve destructive operations that would require additional guards.",{"category":115,"check":122,"severity":36,"summary":123},"Error Handling","The `request` method includes error handling for non-OK responses, implements retry logic for specific status codes, and throws descriptive errors.",{"category":115,"check":125,"severity":36,"summary":126},"Logging","The extension is a library and does not perform destructive actions or outbound calls beyond the intended API requests. It does not implement its own logging for audit purposes, which is acceptable for its scope.",{"category":128,"check":129,"severity":36,"summary":130},"Compliance","GDPR","The extension does not explicitly handle personal data; it primarily interacts with product catalog data. API key management is left to the user.",{"category":128,"check":132,"severity":36,"summary":133},"Target market","The extension's functionality is general to product searching and comparison, and the API supports multiple countries. The `targetMarket` is appropriately set to 'global'.",{"category":102,"check":135,"severity":36,"summary":136},"Runtime stability","The extension is written in TypeScript and built for Node.js environments, with no specific OS or shell dependencies beyond standard network fetch capabilities.",{"category":52,"check":138,"severity":36,"summary":139},"Precise Purpose","The description clearly states the extension's purpose (product search, price comparison, deals) and names the artifact it operates on (BuyWhere API) for AI agents.",{"category":52,"check":141,"severity":36,"summary":142},"Concise Frontmatter","The `package.json` description is concise and accurately summarizes the extension's core capability.",{"category":56,"check":144,"severity":36,"summary":145},"Concise Body","The core logic is in TypeScript files, and the `README.md` is concise, linking to external documentation for API details.",{"category":147,"check":148,"severity":36,"summary":149},"Context","Progressive Disclosure","The README provides a high-level overview and installation instructions, deferring detailed API documentation to external files and links.",{"category":147,"check":151,"severity":152,"summary":153},"Forked exploration","not_applicable","This extension is a client library for an API and does not involve deep exploration or code review tasks, so the `context: fork` setting is not applicable.",{"category":34,"check":155,"severity":36,"summary":156},"Usage examples","The README provides clear, runnable TypeScript examples demonstrating how to use the `BuyWhereClient` and `BuyWhereTools` for common shopping agent tasks.",{"category":34,"check":158,"severity":36,"summary":159},"Edge cases","The `request` method includes retry logic for API errors (429, 5xx), and the tool definitions handle various parameters. The documentation does not explicitly list failure modes, but the client implementation shows basic resilience.",{"category":115,"check":161,"severity":152,"summary":162},"Tool Fallback","The extension acts as a client library and does not depend on external tools like an MCP server with fallbacks; it makes direct API calls.",{"category":164,"check":165,"severity":36,"summary":166},"Safety","Halt on unexpected state","The extension's client implementation throws errors on unexpected API responses, which would halt a workflow. Preconditions for tool usage (like API keys) are handled by the client constructor or runtime environment.",{"category":102,"check":168,"severity":36,"summary":169},"Cross-skill coupling","The extension functions as a standalone library and does not implicitly rely on other skills. It provides tools that can be integrated into various AI agent frameworks.",1778004849747,"This library provides typed interfaces for the BuyWhere API, exposing five core functions: searching products, retrieving product details, comparing products, fetching deals, and listing categories. It includes a `BuyWhereClient` for direct API interaction and integrates seamlessly with OpenAI's function calling mechanism.","2.0.0","3.4.0","The extension is well-documented, production-ready, and secure, with a clear scope and excellent usage examples. The only minor deduction is for the initial versioning scheme ('0.1.0') without a CHANGELOG, which is a very minor point for an otherwise highly robust tool.",95,"A high-quality, production-ready set of OpenAI function calling tools for interacting with the BuyWhere product catalog API.",[15,16,17,18,19,20,21,22,23,24,25,26],"global","verified",{"codeQuality":181,"collectedAt":182,"documentation":183,"maintenance":185,"popularity":187,"security":188,"testCoverage":191},{},1778004832225,{"descriptionLength":184,"readmeSize":8},109,{"closedIssues90d":8,"openIssues90d":8,"pushedAt":186},1777994429000,{"smitheryUniqueUsers":8,"smitheryUseCount":8},{"hasNpmPackage":189,"license":190,"smitheryVerified":189},false,"MIT",{"hasCi":189,"hasTests":189},{"updatedAt":193},1778005088200,{"githubOwner":195,"githubRepo":15,"locale":30,"slug":196,"type":197},"BuyWhere","buywhere-openai-tools","skill",true,null,{"extract":201,"llm":203,"smithery":204},{"commitSha":202,"license":190},"2083d92e71185b754d867eae453dc21e471f33d2",{"promptVersionExtension":172,"promptVersionScoring":173,"score":175,"targetMarket":178,"tier":179},{"qualityScore":8,"totalActivations":8,"uniqueUsers":8,"useCount":8,"verified":189},{"repoId":206},"kd76sh9s8596jy0g347p8xyj6d865494",{"_creationTime":208,"_id":206,"identity":209,"providers":211,"workflow":224},1777995551258.05,{"githubOwner":195,"githubRepo":15,"sourceUrl":210},"https://github.com/BuyWhere/buywhere",{"discover":212,"github":215},{"sources":213},[214],"mcp-registry",{"closedIssues90d":8,"forks":8,"openIssues90d":8,"pushedAt":186,"readmeSize":216,"stars":8,"topics":217},5005,[15,218,219,220,221,222,223],"mcp-server","model-context-protocol","product-catalog","shopping-agent","singapore","southeast-asia",{"discoverAt":225,"extractAt":226,"githubAt":226,"updatedAt":226},1777995551258,1777995647021,{"anyEnrichmentAt":228,"extractAt":229,"githubAt":230,"llmAt":193,"smitheryAt":228,"updatedAt":193},1777995723550,1777995645703,1777995646287,[],[233,256,285,315,338,358],{"_creationTime":234,"_id":235,"community":236,"display":237,"identity":246,"providers":248,"relations":253,"workflow":254},1777995645703.244,"k174tj4zmxrkh9kz1sgs8w3ts9865y61",{"reviewCount":8},{"description":238,"installMethods":239,"name":240,"sourceUrl":241,"tags":242},"BuyWhere tools for LangChain - product search, price comparison, and deals as LangChain tools",{},"BuyWhere LangChain Tools","https://github.com/BuyWhere/buywhere/tree/HEAD/packages/buywhere-langchain",[15,243,244,19,20,21,245,25],"langchain","ecommerce","sdk",{"githubOwner":195,"githubRepo":15,"locale":30,"slug":247,"type":197},"buywhere-langchain",{"extract":249,"llm":250,"smithery":252},{"commitSha":202,"license":190},{"promptVersionExtension":172,"promptVersionScoring":173,"score":251,"targetMarket":178,"tier":179},98,{"qualityScore":8,"totalActivations":8,"uniqueUsers":8,"useCount":8,"verified":189},{"repoId":206},{"anyEnrichmentAt":228,"extractAt":229,"githubAt":230,"llmAt":255,"smitheryAt":228,"updatedAt":255},1777995897177,{"_creationTime":257,"_id":258,"community":259,"display":260,"identity":271,"providers":275,"relations":279,"workflow":281},1778053622473.6658,"k17bbjjk7fn3ngqhcnvx7d97y9867yk9",{"reviewCount":8},{"description":261,"installMethods":262,"name":263,"sourceUrl":264,"tags":265},"Build and publish npx-executable CLI tools using Bun as the primary toolchain with npm-compatible output. Use when the user wants to create a new CLI tool, set up a command-line package for npx execution, configure argument parsing and terminal output, or publish a CLI to npm. Covers scaffolding, citty arg parsing, sub-commands, terminal UX, strict TypeScript, Biome + ESLint linting, Vitest testing, Bunup bundling, and publishing workflows. Keywords: npx, cli, command-line, binary, bin, tool, bun, citty, commander, terminal, publish, typescript, biome, vitest.",{},"npx CLI Tool Development (Bun-First)","https://github.com/jwynia/agent-skills/tree/HEAD/skills/tech/development/tooling/npx-cli",[266,267,25,26,268,269,270],"cli","bun","scaffolding","tooling","development",{"githubOwner":272,"githubRepo":273,"locale":30,"slug":274,"type":197},"jwynia","agent-skills","npx-cli",{"extract":276,"llm":278},{"commitSha":277,"license":190},"e02ec7e226a6e4f8419fd3b88a1d8e472d421b32",{"promptVersionExtension":172,"promptVersionScoring":173,"score":251,"targetMarket":178,"tier":179},{"repoId":280},"kd7efn3mprpa8rd8vm5hw5ebzx864fph",{"anyEnrichmentAt":282,"extractAt":283,"githubAt":282,"llmAt":284,"updatedAt":284},1778053625386,1778053622473,1778054012696,{"_creationTime":286,"_id":287,"community":288,"display":289,"identity":298,"providers":302,"relations":309,"workflow":311},1778054061126.639,"k175y0cqkmtzbdcemwrn1npz1h8670vb",{"reviewCount":8},{"description":290,"installMethods":291,"name":292,"sourceUrl":293,"tags":294},"商品价格全网对比技能，获取商品在淘宝(Taobao)、天猫(TMall)、京东(JD.com)、拼多多(PinDuoDuo)、抖音(Douyin)、快手(KaiShou)的最优价格、优惠券，当用户想购物或者获取优惠信息时使用。Get the best price, coupons for goods on Chinese e-commerce platforms, compare product prices, and use when users want to shop or get discount information.",{},"买手技能","https://github.com/aahl/skills/tree/HEAD/skills/maishou",[244,20,295,22,296,297],"coupons","china","python",{"githubOwner":299,"githubRepo":300,"locale":30,"slug":301,"type":197},"aahl","skills","maishou",{"extract":303,"llm":306},{"commitSha":304,"license":305},"503806b8502ad5965d31c46b9e46584f0746f33d","MIT-0",{"promptVersionExtension":172,"promptVersionScoring":173,"score":307,"targetMarket":178,"tier":308},78,"evaluated",{"repoId":310},"kd7f9kgmrb1hqjqtdjzws1v09d865znt",{"anyEnrichmentAt":312,"extractAt":313,"githubAt":312,"llmAt":314,"updatedAt":314},1778054061476,1778054061126,1778054102990,{"_creationTime":316,"_id":317,"community":318,"display":319,"identity":327,"providers":329,"relations":336,"workflow":337},1777995645703.2446,"k1779m1fq6ajenve6aq8xrbxy58640g6",{"reviewCount":8},{"description":320,"installMethods":321,"name":322,"sourceUrl":323,"tags":324},"Extension from BuyWhere/buywhere",{},"BuyWhere API","https://github.com/BuyWhere/buywhere/tree/HEAD/packages/buywhere-openai-example",[325,22,24,326,16,25,297],"api","mcp",{"githubOwner":195,"githubRepo":15,"locale":30,"slug":328,"type":197},"buywhere-openai-example",{"extract":330,"llm":332,"smithery":335},{"commitSha":202,"license":331},"Proprietary",{"promptVersionExtension":172,"promptVersionScoring":173,"score":333,"targetMarket":178,"tier":334},75,"flagged",{"qualityScore":8,"totalActivations":8,"uniqueUsers":8,"useCount":8,"verified":189},{"repoId":206},{"anyEnrichmentAt":228,"extractAt":229,"githubAt":230,"llmAt":193,"smitheryAt":228,"updatedAt":193},{"_creationTime":339,"_id":340,"community":341,"display":342,"identity":350,"providers":352,"relations":355,"workflow":356},1777995645703.246,"k177ejgk1x1j773b5fw0b07n398657yk",{"reviewCount":8},{"description":343,"installMethods":344,"name":345,"sourceUrl":346,"tags":347},"BuyWhere MCP server — search and compare products from Singapore, SEA, and US markets via Model Context Protocol. Cross-border e-commerce product catalog for AI agents.",{},"BuyWhere MCP Server","https://github.com/BuyWhere/buywhere/tree/HEAD/packages/mcp-server",[326,220,244,22,348,25,325,349,20],"ai-agent","search",{"githubOwner":195,"githubRepo":15,"locale":30,"slug":351,"type":197},"buywhere-mcp-server",{"extract":353,"smithery":354},{"commitSha":202,"license":190},{"qualityScore":8,"totalActivations":8,"uniqueUsers":8,"useCount":8,"verified":189},{"repoId":206},{"anyEnrichmentAt":357,"extractAt":229,"githubAt":230,"invalidatedAt":357,"llmAt":255,"smitheryAt":357,"updatedAt":357},1778004346622,{"_creationTime":359,"_id":360,"community":361,"display":362,"identity":377,"providers":381,"relations":386,"workflow":389},1778053197391.382,"k170wvt5rx3c1hv9a5sfkyezc1866k0q",{"reviewCount":8},{"description":363,"installMethods":364,"name":365,"sourceUrl":366,"tags":367},"Universal AI voice / text-to-speech skill supporting OpenAI TTS (gpt-4o-mini-tts, tts-1), ElevenLabs multilingual TTS with voice cloning, Bailian Qwen TTS (qwen-tts / qwen3-tts-vd with voice-design custom voices, long-text chunking built in), MiniMax speech-02-hd, SiliconFlow CosyVoice / SenseVoice, and PlayHT 2.0. Use this skill whenever the user asks to read text aloud, synthesize speech, generate narration, create voice-over, dub a script, or turn any text into audio (mp3 / wav / ogg / flac). Typical phrases include \"read this aloud\", \"generate voice for ...\", \"create a narration of ...\", \"tts this\", \"把这段念出来\", \"做个配音\", \"合成语音\", or mentions of voices / TTS model names like Alloy, Ash, Cherry, Rachel, CosyVoice, PlayHT. Always use this skill even if the user does not specify a provider — pick one from EXTEND.md defaults or available env keys.",{},"Happy Audio Gen","https://github.com/iamzhihuix/happy-claude-skills/tree/HEAD/skills/happy-audio-gen",[368,369,370,371,16,372,373,374,375,376,267],"tts","speech","audio","voice-generation","elevenlabs","bailian","minimax","siliconflow","playht",{"githubOwner":378,"githubRepo":379,"locale":30,"slug":380,"type":197},"iamzhihuix","happy-claude-skills","happy-audio-gen",{"extract":382,"llm":384},{"commitSha":383,"license":190},"f49e7782a551759c9f9e0a4d4417ff053f0a86fd",{"promptVersionExtension":172,"promptVersionScoring":173,"score":385,"targetMarket":178,"tier":179},100,{"parentExtensionId":387,"repoId":388},"k173ydbbp6c0vdpxv5r0q9yvgd867en5","kd7dbbtdq95nkcs3k7fg9w6fdn864j0b",{"anyEnrichmentAt":390,"extractAt":391,"githubAt":390,"llmAt":392,"updatedAt":392},1778053199195,1778053197391,1778053284450]