[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-skill-vercel-chat-adapter-state-memory-en":3,"guides-for-vercel-chat-adapter-state-memory":227,"similar-k17fxwq9mzph37hyc2pr02cq8x866svj":228},{"_creationTime":4,"_id":5,"children":6,"community":7,"display":9,"evaluation":21,"identity":188,"isFallback":183,"parentExtension":192,"providers":193,"relations":197,"repo":199,"workflow":224},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",null,{"extract":194,"llm":196},{"commitSha":195,"license":184},"3e4764db4d5c826cd0938cdcd0130d14eb8ed992",{"promptVersionExtension":168,"promptVersionScoring":169,"score":171,"targetMarket":174,"tier":175},{"repoId":198},"kd7ds766kaxjjf3s3hr8y7z2t9865yn3",{"_creationTime":200,"_id":198,"identity":201,"providers":203,"workflow":221},1777995558409.8787,{"githubOwner":189,"githubRepo":15,"sourceUrl":202},"https://github.com/vercel/chat",{"discover":204,"github":207},{"sources":205},[206],"skills-sh",{"closedIssues90d":208,"forks":209,"homepage":210,"license":184,"openIssues90d":211,"pushedAt":212,"readmeSize":213,"stars":214,"topics":215},77,192,"https://chat-sdk.dev/",11,1778027870000,3458,1917,[216,15,217,218,219,220,189],"ai","discord","google-chat","slack","teams",{"discoverAt":222,"extractAt":223,"githubAt":223,"updatedAt":223},1777995558409,1778054055543,{"anyEnrichmentAt":225,"extractAt":226,"githubAt":225,"llmAt":187,"updatedAt":187},1778054054404,1778054052548,[],[229,250,271,289,308,328],{"_creationTime":230,"_id":231,"community":232,"display":233,"identity":241,"providers":243,"relations":248,"workflow":249},1778054052548.222,"k17fard3a1kf7n7ybxjexq5k2h866rf5",{"reviewCount":8},{"description":234,"installMethods":235,"name":236,"sourceUrl":237,"tags":238},"Discord adapter for chat",{},"Discord Adapter","https://github.com/vercel/chat/tree/HEAD/packages/adapter-discord",[217,20,15,239,19,240],"sdk","nodejs",{"githubOwner":189,"githubRepo":15,"locale":24,"slug":242,"type":191},"chat-adapter-discord",{"extract":244,"llm":245},{"commitSha":195,"license":184},{"promptVersionExtension":168,"promptVersionScoring":169,"score":246,"targetMarket":174,"tier":247},98,"verified",{"repoId":198},{"anyEnrichmentAt":225,"extractAt":226,"githubAt":225,"llmAt":187,"updatedAt":187},{"_creationTime":251,"_id":252,"community":253,"display":254,"identity":264,"providers":266,"relations":269,"workflow":270},1778054052548.2258,"k17bkh8x7r0t3e36bqb52wgkf5867d0e",{"reviewCount":8},{"description":255,"installMethods":256,"name":257,"sourceUrl":258,"tags":259},"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,260,261,20,262,263],"web","react","ai-sdk","ui",{"githubOwner":189,"githubRepo":15,"locale":24,"slug":265,"type":191},"chat-adapter-web",{"extract":267,"llm":268},{"commitSha":195,"license":184},{"promptVersionExtension":168,"promptVersionScoring":169,"score":246,"targetMarket":174,"tier":247},{"repoId":198},{"anyEnrichmentAt":225,"extractAt":226,"githubAt":225,"llmAt":187,"updatedAt":187},{"_creationTime":272,"_id":273,"community":274,"display":275,"identity":281,"providers":283,"relations":287,"workflow":288},1778054052548.2244,"k17admt4d3nkwv21k8qfz5rg218664hw",{"reviewCount":8},{"description":276,"installMethods":277,"name":278,"sourceUrl":279,"tags":280},"Slack adapter for chat",{},"Slack Adapter","https://github.com/vercel/chat/tree/HEAD/packages/adapter-slack",[219,15,20,239,19],{"githubOwner":189,"githubRepo":15,"locale":24,"slug":282,"type":191},"chat-adapter-slack",{"extract":284,"llm":285},{"commitSha":195,"license":184},{"promptVersionExtension":168,"promptVersionScoring":169,"score":286,"targetMarket":174,"tier":247},95,{"repoId":198},{"anyEnrichmentAt":225,"extractAt":226,"githubAt":225,"llmAt":187,"updatedAt":187},{"_creationTime":290,"_id":291,"community":292,"display":293,"identity":301,"providers":303,"relations":306,"workflow":307},1778054052548.2253,"k17b861s7203y4f2xmmkcq2j8h867hkv",{"reviewCount":8},{"description":294,"installMethods":295,"name":296,"sourceUrl":297,"tags":298},"Telegram adapter for chat",{},"Telegram Adapter","https://github.com/vercel/chat/tree/HEAD/packages/adapter-telegram",[15,299,300,20,239],"telegram","bot",{"githubOwner":189,"githubRepo":15,"locale":24,"slug":302,"type":191},"chat-adapter-telegram",{"extract":304,"llm":305},{"commitSha":195,"license":184},{"promptVersionExtension":168,"promptVersionScoring":169,"score":286,"targetMarket":174,"tier":247},{"repoId":198},{"anyEnrichmentAt":225,"extractAt":226,"githubAt":225,"llmAt":187,"updatedAt":187},{"_creationTime":309,"_id":310,"community":311,"display":312,"identity":321,"providers":323,"relations":326,"workflow":327},1778054052548.223,"k179p1cp5v99kfeh4jtacgym3s867abn",{"reviewCount":8},{"description":313,"installMethods":314,"name":315,"sourceUrl":316,"tags":317},"GitHub adapter for chat - PR and issue comment threads",{},"GitHub Adapter","https://github.com/vercel/chat/tree/HEAD/packages/adapter-github",[318,20,15,239,319,320],"github","developer-tools","api-integration",{"githubOwner":189,"githubRepo":15,"locale":24,"slug":322,"type":191},"chat-adapter-github",{"extract":324,"llm":325},{"commitSha":195,"license":184},{"promptVersionExtension":168,"promptVersionScoring":169,"score":286,"targetMarket":174,"tier":247},{"repoId":198},{"anyEnrichmentAt":225,"extractAt":226,"githubAt":225,"llmAt":187,"updatedAt":187},{"_creationTime":329,"_id":330,"community":331,"display":332,"identity":338,"providers":340,"relations":344,"workflow":345},1778054052548.2249,"k1744qy6c2qsgrwz424h3sbvm9866sf7",{"reviewCount":8},{"description":333,"installMethods":334,"name":333,"sourceUrl":335,"tags":336},"Microsoft Teams adapter for chat",{},"https://github.com/vercel/chat/tree/HEAD/packages/adapter-teams",[220,337,15,20,300,239,19],"microsoft",{"githubOwner":189,"githubRepo":15,"locale":24,"slug":339,"type":191},"chat-adapter-teams",{"extract":341,"llm":342},{"commitSha":195,"license":184},{"promptVersionExtension":168,"promptVersionScoring":169,"score":343,"targetMarket":174,"tier":247},94,{"repoId":198},{"anyEnrichmentAt":225,"extractAt":226,"githubAt":225,"llmAt":187,"updatedAt":187}]