[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-skill-vercel-chat-adapter-state-memory-es":3,"guides-for-vercel-chat-adapter-state-memory":228,"similar-k17fxwq9mzph37hyc2pr02cq8x866svj":229},{"_creationTime":4,"_id":5,"children":6,"community":7,"display":9,"evaluation":21,"identity":188,"isFallback":192,"parentExtension":193,"providers":194,"relations":198,"repo":200,"workflow":225},1778054052548.2283,"k17fxwq9mzph37hyc2pr02cq8x866svj",[],{"reviewCount":8},0,{"description":10,"installMethods":11,"name":12,"sourceUrl":13,"tags":14},"In-memory state adapter for chat (development/testing)",{},"In-memory state adapter for chat","https://github.com/vercel/chat/tree/HEAD/packages/state-memory",[15,16,17,18,19,20],"chat","state","memory","testing","typescript","adapter",{"_creationTime":22,"_id":23,"extensionId":5,"locale":24,"result":25,"trustSignals":176,"workflow":186},1778054107364.4468,"kn71rrj5rk6b2nbyme0w57chj58666mh","en",{"checks":26,"evaluatedAt":166,"extensionSummary":167,"promptVersionExtension":168,"promptVersionScoring":169,"rationale":170,"score":171,"summary":172,"tags":173,"targetMarket":174,"tier":175},[27,32,35,39,43,46,51,55,58,61,65,70,73,77,80,83,86,89,92,95,99,103,107,111,115,118,121,124,128,131,134,137,140,143,147,150,153,156,159,163],{"category":28,"check":29,"severity":30,"summary":31},"Practical Utility","Problem relevance","pass","The description correctly identifies the problem of needing an in-memory state adapter for development and testing.",{"category":28,"check":33,"severity":30,"summary":34},"Unique selling proposition","The extension provides a specific in-memory state adapter for the Chat SDK, offering a dedicated solution for development and testing scenarios, which is distinct from default LLM behavior.",{"category":28,"check":36,"severity":37,"summary":38},"Production readiness","critical","The README explicitly states that the memory adapter is not suitable for production and that state is lost on restart, making it unusable for real workflows.",{"category":40,"check":41,"severity":30,"summary":42},"Scope","Single responsibility principle","The extension is solely focused on providing an in-memory state adapter for the Chat SDK, with no indications of extending into unrelated domains.",{"category":40,"check":44,"severity":30,"summary":45},"Description quality","The description accurately reflects the extension's purpose and limitations as an in-memory state adapter for development and testing.",{"category":47,"check":48,"severity":49,"summary":50},"Invocation","Scoped tools","not_applicable","This extension does not expose tools in the typical sense; it provides an adapter implementation.",{"category":52,"check":53,"severity":30,"summary":54},"Documentation","Configuration & parameter reference","The README states 'No configuration options are needed,' which aligns with the observed implementation.",{"category":40,"check":56,"severity":49,"summary":57},"Tool naming","This extension does not expose tools with user-facing names.",{"category":40,"check":59,"severity":49,"summary":60},"Minimal I/O surface","This extension does not expose tools with user-facing parameters or response shapes.",{"category":62,"check":63,"severity":30,"summary":64},"License","License usability","The extension is licensed under MIT, a permissive open-source license, clearly indicated in the LICENSE file and README.",{"category":66,"check":67,"severity":68,"summary":69},"Maintenance","Commit recency","warning","No commits have been made to the default branch in the last 12 months, indicating potential unmaintenance.",{"category":66,"check":71,"severity":30,"summary":72},"Dependency Management","The package.json includes 'chat' with 'workspace:*' which indicates local dependency management, and no other external dependencies are listed that would require a complex update mechanism.",{"category":74,"check":75,"severity":49,"summary":76},"Security","Secret Management","The extension does not handle secrets as it is an in-memory adapter for development/testing.",{"category":74,"check":78,"severity":49,"summary":79},"Injection","This extension does not load or execute external data or files.",{"category":74,"check":81,"severity":49,"summary":82},"Transitive Supply-Chain Grenades","The extension does not fetch remote content or include external files.",{"category":74,"check":84,"severity":49,"summary":85},"Sandbox Isolation","This extension does not perform file system operations outside its own scope.",{"category":74,"check":87,"severity":49,"summary":88},"Sandbox escape primitives","No scripts are executed that could facilitate sandbox escapes.",{"category":74,"check":90,"severity":49,"summary":91},"Data Exfiltration","This in-memory adapter does not perform any outbound calls or handle sensitive data.",{"category":74,"check":93,"severity":30,"summary":94},"Hidden Text Tricks","Bundled content is free of hidden-steering tricks.",{"category":96,"check":97,"severity":30,"summary":98},"Hooks","Opaque code execution","The bundled code is plain, readable TypeScript, with no obfuscation or runtime fetching.",{"category":100,"check":101,"severity":49,"summary":102},"Portability","Structural Assumption","The skill makes no structural assumptions about the user's project.",{"category":104,"check":105,"severity":49,"summary":106},"Trust","Issues Attention","No issues data is available.",{"category":108,"check":109,"severity":30,"summary":110},"Versioning","Release Management","The package.json includes a version number (4.27.0) and the CHANGELOG.md file is present.",{"category":112,"check":113,"severity":49,"summary":114},"Code Execution","Validation","This extension does not expose tools with user-defined inputs that require validation.",{"category":74,"check":116,"severity":49,"summary":117},"Unguarded Destructive Operations","The extension is read-only and does not perform destructive operations.",{"category":112,"check":119,"severity":30,"summary":120},"Error Handling","The code includes error handling for connection issues and general adapter operations, throwing descriptive errors when necessary.",{"category":112,"check":122,"severity":49,"summary":123},"Logging","This extension does not perform destructive actions or outbound calls that would require local audit logging.",{"category":125,"check":126,"severity":49,"summary":127},"Compliance","GDPR","The extension operates entirely in-memory and does not process any personal data.",{"category":125,"check":129,"severity":30,"summary":130},"Target market","The extension is intended for local development and testing, making it globally applicable with no regional restrictions.",{"category":100,"check":132,"severity":30,"summary":133},"Runtime stability","The extension is a TypeScript module designed to run in a Node.js environment and does not make specific OS or shell assumptions.",{"category":47,"check":135,"severity":30,"summary":136},"Precise Purpose","The description clearly states it's an in-memory state adapter for chat, specifically for development/testing, and that state is lost on restart.",{"category":47,"check":138,"severity":30,"summary":139},"Concise Frontmatter","The README frontmatter is concise and effectively summarizes the extension's purpose and limitations.",{"category":52,"check":141,"severity":30,"summary":142},"Concise Body","The README body is concise, with relevant details about installation, usage, features, limitations, and when to use it.",{"category":144,"check":145,"severity":49,"summary":146},"Context","Progressive Disclosure","The README is short and does not require progressive disclosure.",{"category":144,"check":148,"severity":49,"summary":149},"Forked exploration","This extension is not an exploration-focused skill.",{"category":28,"check":151,"severity":30,"summary":152},"Usage examples","A clear TypeScript usage example is provided, showing how to integrate the memory state adapter with the Chat SDK.",{"category":28,"check":154,"severity":30,"summary":155},"Edge cases","The README explicitly lists limitations such as state loss on restart and single-process only, which covers the main edge cases.",{"category":112,"check":157,"severity":49,"summary":158},"Tool Fallback","This extension does not rely on external tools like an MCP server; it implements its own adapter logic.",{"category":160,"check":161,"severity":30,"summary":162},"Safety","Halt on unexpected state","The adapter throws an error if not connected, and internal methods handle potential states like expired locks gracefully.",{"category":100,"check":164,"severity":49,"summary":165},"Cross-skill coupling","This extension is a standalone adapter and does not rely on or interact with other skills.",1778054095088,"This adapter provides in-memory storage for chat state, including subscriptions, locks, key-value caching, and queues. It is designed for local development and unit testing scenarios, offering zero configuration and in-memory functionality without persistence.","2.0.0","3.4.0","The extension is a well-implemented in-memory state adapter for development and testing. However, its critical production readiness warning and lack of recent commits significantly lower its trust score.",75,"A functional in-memory state adapter for the Chat SDK, suitable for development and testing but not production.",[15,16,17,18,19,20],"global","flagged",{"codeQuality":177,"collectedAt":178,"documentation":179,"maintenance":181,"security":182,"testCoverage":185},{},1778054085786,{"descriptionLength":180,"readmeSize":8},54,{},{"hasNpmPackage":183,"license":184,"smitheryVerified":183},false,"MIT",{"hasCi":183,"hasTests":183},{"updatedAt":187},1778054107364,{"githubOwner":189,"githubRepo":15,"locale":24,"slug":190,"type":191},"vercel","chat-adapter-state-memory","skill",true,null,{"extract":195,"llm":197},{"commitSha":196,"license":184},"3e4764db4d5c826cd0938cdcd0130d14eb8ed992",{"promptVersionExtension":168,"promptVersionScoring":169,"score":171,"targetMarket":174,"tier":175},{"repoId":199},"kd7ds766kaxjjf3s3hr8y7z2t9865yn3",{"_creationTime":201,"_id":199,"identity":202,"providers":204,"workflow":222},1777995558409.8787,{"githubOwner":189,"githubRepo":15,"sourceUrl":203},"https://github.com/vercel/chat",{"discover":205,"github":208},{"sources":206},[207],"skills-sh",{"closedIssues90d":209,"forks":210,"homepage":211,"license":184,"openIssues90d":212,"pushedAt":213,"readmeSize":214,"stars":215,"topics":216},77,192,"https://chat-sdk.dev/",11,1778027870000,3458,1917,[217,15,218,219,220,221,189],"ai","discord","google-chat","slack","teams",{"discoverAt":223,"extractAt":224,"githubAt":224,"updatedAt":224},1777995558409,1778054055543,{"anyEnrichmentAt":226,"extractAt":227,"githubAt":226,"llmAt":187,"updatedAt":187},1778054054404,1778054052548,[],[230,251,272,290,309,329],{"_creationTime":231,"_id":232,"community":233,"display":234,"identity":242,"providers":244,"relations":249,"workflow":250},1778054052548.222,"k17fard3a1kf7n7ybxjexq5k2h866rf5",{"reviewCount":8},{"description":235,"installMethods":236,"name":237,"sourceUrl":238,"tags":239},"Discord adapter for chat",{},"Discord Adapter","https://github.com/vercel/chat/tree/HEAD/packages/adapter-discord",[218,20,15,240,19,241],"sdk","nodejs",{"githubOwner":189,"githubRepo":15,"locale":24,"slug":243,"type":191},"chat-adapter-discord",{"extract":245,"llm":246},{"commitSha":196,"license":184},{"promptVersionExtension":168,"promptVersionScoring":169,"score":247,"targetMarket":174,"tier":248},98,"verified",{"repoId":199},{"anyEnrichmentAt":226,"extractAt":227,"githubAt":226,"llmAt":187,"updatedAt":187},{"_creationTime":252,"_id":253,"community":254,"display":255,"identity":265,"providers":267,"relations":270,"workflow":271},1778054052548.2258,"k17bkh8x7r0t3e36bqb52wgkf5867d0e",{"reviewCount":8},{"description":256,"installMethods":257,"name":258,"sourceUrl":259,"tags":260},"Web adapter for chat — browser chat UI via the AI SDK useChat protocol",{},"Chat Web Adapter","https://github.com/vercel/chat/tree/HEAD/packages/adapter-web",[15,261,262,20,263,264],"web","react","ai-sdk","ui",{"githubOwner":189,"githubRepo":15,"locale":24,"slug":266,"type":191},"chat-adapter-web",{"extract":268,"llm":269},{"commitSha":196,"license":184},{"promptVersionExtension":168,"promptVersionScoring":169,"score":247,"targetMarket":174,"tier":248},{"repoId":199},{"anyEnrichmentAt":226,"extractAt":227,"githubAt":226,"llmAt":187,"updatedAt":187},{"_creationTime":273,"_id":274,"community":275,"display":276,"identity":282,"providers":284,"relations":288,"workflow":289},1778054052548.2244,"k17admt4d3nkwv21k8qfz5rg218664hw",{"reviewCount":8},{"description":277,"installMethods":278,"name":279,"sourceUrl":280,"tags":281},"Slack adapter for chat",{},"Slack Adapter","https://github.com/vercel/chat/tree/HEAD/packages/adapter-slack",[220,15,20,240,19],{"githubOwner":189,"githubRepo":15,"locale":24,"slug":283,"type":191},"chat-adapter-slack",{"extract":285,"llm":286},{"commitSha":196,"license":184},{"promptVersionExtension":168,"promptVersionScoring":169,"score":287,"targetMarket":174,"tier":248},95,{"repoId":199},{"anyEnrichmentAt":226,"extractAt":227,"githubAt":226,"llmAt":187,"updatedAt":187},{"_creationTime":291,"_id":292,"community":293,"display":294,"identity":302,"providers":304,"relations":307,"workflow":308},1778054052548.2253,"k17b861s7203y4f2xmmkcq2j8h867hkv",{"reviewCount":8},{"description":295,"installMethods":296,"name":297,"sourceUrl":298,"tags":299},"Telegram adapter for chat",{},"Telegram Adapter","https://github.com/vercel/chat/tree/HEAD/packages/adapter-telegram",[15,300,301,20,240],"telegram","bot",{"githubOwner":189,"githubRepo":15,"locale":24,"slug":303,"type":191},"chat-adapter-telegram",{"extract":305,"llm":306},{"commitSha":196,"license":184},{"promptVersionExtension":168,"promptVersionScoring":169,"score":287,"targetMarket":174,"tier":248},{"repoId":199},{"anyEnrichmentAt":226,"extractAt":227,"githubAt":226,"llmAt":187,"updatedAt":187},{"_creationTime":310,"_id":311,"community":312,"display":313,"identity":322,"providers":324,"relations":327,"workflow":328},1778054052548.223,"k179p1cp5v99kfeh4jtacgym3s867abn",{"reviewCount":8},{"description":314,"installMethods":315,"name":316,"sourceUrl":317,"tags":318},"GitHub adapter for chat - PR and issue comment threads",{},"GitHub Adapter","https://github.com/vercel/chat/tree/HEAD/packages/adapter-github",[319,20,15,240,320,321],"github","developer-tools","api-integration",{"githubOwner":189,"githubRepo":15,"locale":24,"slug":323,"type":191},"chat-adapter-github",{"extract":325,"llm":326},{"commitSha":196,"license":184},{"promptVersionExtension":168,"promptVersionScoring":169,"score":287,"targetMarket":174,"tier":248},{"repoId":199},{"anyEnrichmentAt":226,"extractAt":227,"githubAt":226,"llmAt":187,"updatedAt":187},{"_creationTime":330,"_id":331,"community":332,"display":333,"identity":339,"providers":341,"relations":345,"workflow":346},1778054052548.2249,"k1744qy6c2qsgrwz424h3sbvm9866sf7",{"reviewCount":8},{"description":334,"installMethods":335,"name":334,"sourceUrl":336,"tags":337},"Microsoft Teams adapter for chat",{},"https://github.com/vercel/chat/tree/HEAD/packages/adapter-teams",[221,338,15,20,301,240,19],"microsoft",{"githubOwner":189,"githubRepo":15,"locale":24,"slug":340,"type":191},"chat-adapter-teams",{"extract":342,"llm":343},{"commitSha":196,"license":184},{"promptVersionExtension":168,"promptVersionScoring":169,"score":344,"targetMarket":174,"tier":248},94,{"repoId":199},{"anyEnrichmentAt":226,"extractAt":227,"githubAt":226,"llmAt":187,"updatedAt":187}]