[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-skill-langchain-ai-langchain-middleware-ar":3,"guides-for-langchain-ai-langchain-middleware":264,"similar-k178hdatn172x3fq0f6hmmxay5867c5c":265},{"_creationTime":4,"_id":5,"children":6,"community":7,"display":9,"evaluation":21,"identity":189,"isFallback":194,"parentExtension":195,"providers":242,"relations":245,"repo":246,"workflow":263},1778053782268.1997,"k178hdatn172x3fq0f6hmmxay5867c5c",[],{"reviewCount":8},0,{"description":10,"installMethods":11,"name":12,"sourceUrl":13,"tags":14},"INVOKE THIS SKILL when you need human-in-the-loop approval, custom middleware, or structured output. Covers HumanInTheLoopMiddleware for human approval of dangerous tool calls, creating custom middleware with hooks, Command resume patterns, and structured output with Pydantic/Zod.",{},"LangChain Middleware","https://github.com/langchain-ai/langchain-skills/tree/HEAD/config/skills/langchain-middleware",[15,16,17,18,19,20],"langchain","middleware","agent","typescript","python","hitl",{"_creationTime":22,"_id":23,"extensionId":5,"locale":24,"result":25,"trustSignals":178,"workflow":187},1778053822111.3564,"kn73m9dgzvgtn629gx7yqbdy75866z6e","en",{"checks":26,"evaluatedAt":168,"extensionSummary":169,"promptVersionExtension":170,"promptVersionScoring":171,"rationale":172,"score":173,"summary":174,"tags":175,"targetMarket":176,"tier":177},[27,32,35,39,43,47,51,54,58,62,66,69,72,75,78,82,85,88,91,94,97,101,105,108,112,115,118,121,124,127,130,134,137,141,146,149,152,155,158,162,165],{"category":28,"check":29,"severity":30,"summary":31},"Invocation","Precise Purpose","pass","The description clearly states the skill's purpose and when to use it, naming specific middleware patterns and their use cases.",{"category":28,"check":33,"severity":30,"summary":34},"Concise Frontmatter","The frontmatter is concise and clearly summarizes the core capabilities and use cases for precise routing.",{"category":36,"check":37,"severity":30,"summary":38},"Documentation","Concise Body","The SKILL.md body is under 500 lines and delegates deeper material to examples and configuration sections, adhering to progressive disclosure.",{"category":40,"check":41,"severity":30,"summary":42},"Context","Progressive Disclosure","The SKILL.md outlines the flow and links into separate example sections for detailed procedures, demonstrating progressive disclosure.",{"category":40,"check":44,"severity":45,"summary":46},"Forked exploration","not_applicable","This skill does not involve deep exploration or code review, so the 'context: fork' setting is not applicable.",{"category":48,"check":49,"severity":30,"summary":50},"Practical Utility","Usage examples","Sufficient and plausible examples are provided for each major capability, demonstrating setup, invocation, and expected outcomes.",{"category":48,"check":52,"severity":30,"summary":53},"Edge cases","The skill handles edge cases and limitations, documenting failure modes with symptoms and recovery steps, such as the checkpointer requirement for HITL.",{"category":55,"check":56,"severity":45,"summary":57},"Code Execution","Tool Fallback","The skill uses only Claude-internal tools and does not rely on external or custom MCP servers, making fallbacks not applicable.",{"category":59,"check":60,"severity":30,"summary":61},"Portability","Stack assumptions","The skill clearly states its stack assumptions and preconditions, including the requirement for a checkpointer and thread_id for HITL workflows, and specifies Python/TypeScript runtimes.",{"category":63,"check":64,"severity":30,"summary":65},"Safety","Halt on unexpected state","The skill instructs to abort and report on unexpected pre-state, such as the requirement for a checkpointer for HITL workflows.",{"category":59,"check":67,"severity":30,"summary":68},"Cross-skill coupling","The skill is self-contained and does not implicitly rely on other skills; any cross-skill coordination would be explicit.",{"category":48,"check":70,"severity":30,"summary":71},"Problem relevance","The description clearly names concrete user problems like human-in-the-loop approval and structured output.",{"category":48,"check":73,"severity":30,"summary":74},"Unique selling proposition","The skill offers value beyond basic prompt engineering by implementing specific middleware patterns for LangChain agents.",{"category":48,"check":76,"severity":30,"summary":77},"Production readiness","The skill appears production-ready, covering complete lifecycle aspects of middleware implementation for agent workflows.",{"category":79,"check":80,"severity":30,"summary":81},"Scope","Single responsibility principle","The skill focuses on middleware patterns for LangChain agents, encompassing human-in-the-loop, custom hooks, and structured output, which are coherently related.",{"category":79,"check":83,"severity":30,"summary":84},"Description quality","The description is accurate, concise, readable, and accurately reflects the skill's behavior.",{"category":28,"check":86,"severity":30,"summary":87},"Scoped tools","The skill utilizes scoped tools like 'send_email' and various middleware hooks, avoiding generalist 'execute' commands.",{"category":36,"check":89,"severity":30,"summary":90},"Configuration & parameter reference","All required configurations, like checkpointers and thread_ids for HITL, are documented and demonstrated in examples.",{"category":79,"check":92,"severity":30,"summary":93},"Tool naming","Tool names like 'send_email', 'read_email', and 'delete_email' are descriptive and easy to understand.",{"category":79,"check":95,"severity":30,"summary":96},"Minimal I/O surface","Input schemas for tools and middleware configurations are well-defined and accept only necessary data, with clear outputs.",{"category":98,"check":99,"severity":45,"summary":100},"License","License usability","The license information is not explicitly provided in the repository files, but the project structure suggests it's a standard open-source project.",{"category":102,"check":103,"severity":45,"summary":104},"Maintenance","Commit recency","Commit data is not available for this check.",{"category":102,"check":106,"severity":30,"summary":107},"Dependency Management","The README mentions LangChain, LangGraph, and standard package managers (npm, pnpm), implying standard dependency management practices.",{"category":109,"check":110,"severity":30,"summary":111},"Security","Secret Management","The skill does not appear to handle secrets directly, and environment variable usage is standard for agent setup, with no indications of secrets being echoed.",{"category":109,"check":113,"severity":30,"summary":114},"Injection","The skill focuses on middleware patterns and agent configuration, with no indication of loading untrusted external data or scripts as instructions.",{"category":109,"check":116,"severity":30,"summary":117},"Transitive Supply-Chain Grenades","The skill does not fetch remote content to execute as instructions or include external files that could pose a supply-chain risk.",{"category":109,"check":119,"severity":30,"summary":120},"Sandbox Isolation","The skill operates within the agent's sandbox, focusing on middleware configuration and tool interactions without attempting to modify files outside its designated scope.",{"category":109,"check":122,"severity":30,"summary":123},"Sandbox escape primitives","No sandbox-escape primitives like detached processes or retry loops around denied calls were found.",{"category":109,"check":125,"severity":30,"summary":126},"Data Exfiltration","The skill's focus on middleware configuration and tool descriptions does not involve reading or submitting confidential data to third parties.",{"category":109,"check":128,"severity":30,"summary":129},"Hidden Text Tricks","Bundled files do not contain any hidden-steering tricks, invisible characters, or obfuscated content.",{"category":131,"check":132,"severity":30,"summary":133},"Hooks","Opaque code execution","The code in the SKILL.md is plain and readable, with no obfuscation, base64 payloads, or runtime fetched scripts.",{"category":59,"check":135,"severity":30,"summary":136},"Structural Assumption","The skill makes no structural assumptions about the user's project organization outside of its own bundle, clearly stating prerequisites like checkpointers.",{"category":138,"check":139,"severity":45,"summary":140},"Trust","Issues Attention","Issue data is not available for this check.",{"category":142,"check":143,"severity":144,"summary":145},"Versioning","Release Management","warning","No version information (manifest, release tags, CHANGELOG) is present in the repository, and installation references the main branch.",{"category":55,"check":147,"severity":30,"summary":148},"Validation","Input arguments and tool schemas (e.g., Pydantic/Zod) are validated, ensuring data integrity.",{"category":109,"check":150,"severity":30,"summary":151},"Unguarded Destructive Operations","The skill focuses on middleware and agent configuration, not destructive operations, thus no unguarded destructive actions are present.",{"category":55,"check":153,"severity":30,"summary":154},"Error Handling","The examples demonstrate robust error handling for middleware and tool execution, including explicit resume syntax for interrupts.",{"category":55,"check":156,"severity":45,"summary":157},"Logging","Logging is not a primary focus for this configuration-focused skill, and no destructive actions necessitate audit logs.",{"category":159,"check":160,"severity":45,"summary":161},"Compliance","GDPR","The skill does not operate on personal data; it configures agent behavior.",{"category":159,"check":163,"severity":30,"summary":164},"Target market","The skill is language-agnostic and framework-focused, with no regional signals, thus targeting a global market.",{"category":59,"check":166,"severity":30,"summary":167},"Runtime stability","The skill is written in Python and TypeScript, with clear indications of supported runtimes and graceful handling of required components like checkpointers.",1778053805097,"This skill provides middleware capabilities for LangChain agents, including human-in-the-loop approval workflows, custom interception logic for tool calls, and patterns for resuming execution after human decisions. It supports both Python and TypeScript environments and requires a checkpointer for its Human-in-the-Loop features.","2.0.0","3.4.0","This skill is well-documented, robust, and adheres to best practices for agent development. The `Release Management` check is a warning due to the lack of explicit versioning, but this is mitigated by the overall quality and clear instructions.",92,"A comprehensive skill for implementing advanced middleware patterns in LangChain agents.",[15,16,17,18,19,20],"global","verified",{"codeQuality":179,"collectedAt":180,"documentation":181,"maintenance":183,"security":184,"testCoverage":186},{},1778053794678,{"descriptionLength":182,"readmeSize":8},281,{},{"hasNpmPackage":185,"smitheryVerified":185},false,{"hasCi":185,"hasTests":185},{"updatedAt":188},1778053822111,{"githubOwner":190,"githubRepo":191,"locale":24,"slug":192,"type":193},"langchain-ai","langchain-skills","langchain-middleware","skill",true,{"_creationTime":196,"_id":197,"community":198,"display":199,"identity":211,"parentExtension":213,"providers":236,"relations":240,"workflow":241},1778053782268.1963,"k1710b29xhgdykchws1tmnjrnx866nxv",{"reviewCount":8},{"description":200,"installMethods":201,"name":202,"sourceUrl":203,"tags":204},"Agent skills for building agents with LangChain, LangGraph, and Deep Agents",{},"LangChain Skills","https://github.com/langchain-ai/langchain-skills",[15,205,206,207,208,209,210],"langgraph","deep-agents","ai-agents","rag","skills","plugins",{"githubOwner":190,"githubRepo":191,"locale":24,"slug":191,"type":212},"plugin",{"_creationTime":214,"_id":215,"community":216,"display":217,"identity":220,"providers":222,"relations":231,"workflow":233},1778053782268.1958,"k1787v8f6tx7dxy8c4xfz7hk2h867f5j",{"reviewCount":8},{"description":200,"installMethods":218,"name":202,"sourceUrl":203,"tags":219},{},[15,205,206,207,208],{"githubOwner":190,"githubRepo":191,"locale":24,"slug":191,"type":221},"marketplace",{"extract":223,"llm":228},{"commitSha":224,"license":225,"marketplace":226},"648df5daa32ef7a742a07740d9c5d13e3b8229c4","MIT",{"name":191,"pluginCount":227},1,{"promptVersionExtension":170,"promptVersionScoring":171,"score":229,"targetMarket":176,"tier":230},70,"evaluated",{"repoId":232},"kd74nzm561ws7px2qx08z27fad864yft",{"anyEnrichmentAt":234,"extractAt":235,"githubAt":234,"llmAt":188,"updatedAt":188},1778053782949,1778053782268,{"extract":237,"llm":238},{"commitSha":224,"license":225},{"promptVersionExtension":170,"promptVersionScoring":171,"score":239,"targetMarket":176,"tier":230},75,{"parentExtensionId":215,"repoId":232},{"anyEnrichmentAt":234,"extractAt":235,"githubAt":234,"llmAt":188,"updatedAt":188},{"extract":243,"llm":244},{"commitSha":224,"license":45},{"promptVersionExtension":170,"promptVersionScoring":171,"score":173,"targetMarket":176,"tier":177},{"parentExtensionId":197,"repoId":232},{"_creationTime":247,"_id":232,"identity":248,"providers":249,"workflow":260},1777995558409.8423,{"githubOwner":190,"githubRepo":191,"sourceUrl":203},{"discover":250,"github":253},{"sources":251},[252],"skills-sh",{"closedIssues90d":254,"forks":255,"openIssues90d":8,"pushedAt":256,"readmeSize":257,"stars":258,"topics":259},2,58,1777486877000,3660,651,[],{"discoverAt":261,"extractAt":262,"githubAt":262,"updatedAt":262},1777995558409,1778053783581,{"anyEnrichmentAt":234,"extractAt":235,"githubAt":234,"llmAt":188,"updatedAt":188},[],[266,295,324,343,376,403],{"_creationTime":267,"_id":268,"community":269,"display":270,"identity":280,"providers":284,"relations":289,"workflow":291},1778054432207.5422,"k178t7t7ek2kr53kqyz2tn8m4x867gmh",{"reviewCount":8},{"description":271,"installMethods":272,"name":273,"sourceUrl":274,"tags":275},"Manage OpenClaw bot configuration - channels, agents, security, and autopilot settings",{},"OpenClaw Config","https://github.com/adisinghstudent/easyclaw/tree/HEAD/skills/openclaw-config",[276,17,277,278,18,279],"openclaw","configuration","troubleshooting","devops",{"githubOwner":281,"githubRepo":282,"locale":24,"slug":283,"type":193},"adisinghstudent","easyclaw","openclaw-config",{"extract":285,"llm":287},{"commitSha":286,"license":225},"2a938af22323bcc822625828f6303cb75690e7c7",{"promptVersionExtension":170,"promptVersionScoring":171,"score":288,"targetMarket":176,"tier":177},98,{"repoId":290},"kd7fy171w716bjdays4yawdj91865292",{"anyEnrichmentAt":292,"extractAt":293,"githubAt":292,"llmAt":294,"updatedAt":294},1778054432549,1778054432207,1778054457102,{"_creationTime":296,"_id":297,"community":298,"display":299,"identity":309,"providers":313,"relations":318,"workflow":320},1778053100136.2402,"k17e05w840mc0qc6pves9w7995866k14",{"reviewCount":8},{"description":300,"installMethods":301,"name":302,"sourceUrl":303,"tags":304},"Interact with DeerFlow AI agent platform via its HTTP API. Use this skill when the user wants to send messages or questions to DeerFlow for research/analysis, start a DeerFlow conversation thread, check DeerFlow status or health, list available models/skills/agents in DeerFlow, manage DeerFlow memory, upload files to DeerFlow threads, or delegate complex research tasks to DeerFlow. Also use when the user mentions deerflow, deer flow, or wants to run a deep research task that DeerFlow can handle.",{},"Claude to DeerFlow","https://github.com/bytedance/deer-flow/tree/HEAD/skills/public/claude-to-deerflow",[305,306,307,17,308,19],"deerflow","api","http","bash",{"githubOwner":310,"githubRepo":311,"locale":24,"slug":312,"type":193},"bytedance","deer-flow","claude-to-deerflow",{"extract":314,"llm":316},{"commitSha":315,"license":225},"1336872b15c25d45ebcb7c1cf72369c2bdd53187",{"promptVersionExtension":170,"promptVersionScoring":171,"score":317,"targetMarket":176,"tier":177},96,{"repoId":319},"kd789sm7egx1h0t1jag6zzhcq98656wv",{"anyEnrichmentAt":321,"extractAt":322,"githubAt":321,"llmAt":323,"updatedAt":323},1778053101076,1778053100136,1778053169012,{"_creationTime":325,"_id":326,"community":327,"display":328,"identity":335,"providers":337,"relations":341,"workflow":342},1778053782268.1992,"k173vbfgk230k1tbg313sjr5g1866em1",{"reviewCount":8},{"description":329,"installMethods":330,"name":331,"sourceUrl":332,"tags":333},"Create LangChain agents with create_agent, define tools, and use middleware for human-in-the-loop and error handling.",{},"LangChain Fundamentals","https://github.com/langchain-ai/langchain-skills/tree/HEAD/config/skills/langchain-fundamentals",[15,17,334,16,19,18],"tool",{"githubOwner":190,"githubRepo":191,"locale":24,"slug":336,"type":193},"langchain-fundamentals",{"extract":338,"llm":339},{"commitSha":224,"license":225},{"promptVersionExtension":170,"promptVersionScoring":171,"score":340,"targetMarket":176,"tier":177},88,{"parentExtensionId":197,"repoId":232},{"anyEnrichmentAt":234,"extractAt":235,"githubAt":234,"llmAt":188,"updatedAt":188},{"_creationTime":344,"_id":345,"community":346,"display":347,"identity":358,"providers":362,"relations":369,"workflow":371},1777995614337.9844,"k17f0xfg2pkfqd1p5jjzh8sswh8645px",{"reviewCount":8},{"description":348,"installMethods":349,"name":350,"sourceUrl":351,"tags":352},"Scaffold an editable Tandem control panel app",{},"Tandem Panel Scaffold","https://github.com/frumu-ai/tandem/tree/HEAD/packages/create-tandem-panel",[353,354,355,18,356,357],"scaffolding","cli","react","vite","ui",{"githubOwner":359,"githubRepo":360,"locale":24,"slug":361,"type":193},"frumu-ai","tandem","create-tandem-panel",{"extract":363,"llm":366,"smithery":368},{"commitSha":364,"license":365},"25c8ae7c2f8b20d576a2b8d44946ac2e0ff9408d","MIT OR Apache-2.0",{"promptVersionExtension":170,"promptVersionScoring":171,"score":367,"targetMarket":176,"tier":177},100,{"qualityScore":8,"totalActivations":8,"uniqueUsers":8,"useCount":8,"verified":185},{"repoId":370},"kd72pd305er4m7vecv9p6mnd4s865kea",{"anyEnrichmentAt":372,"extractAt":373,"githubAt":374,"llmAt":375,"smitheryAt":372,"updatedAt":375},1777995723550,1777995614338,1777995614791,1777995897177,{"_creationTime":377,"_id":378,"community":379,"display":380,"identity":389,"providers":392,"relations":397,"workflow":399},1778054425877.1958,"k171ck7gyw157xcvkrk6k0r9y1866w01",{"reviewCount":8},{"description":381,"name":382,"sourceUrl":383,"tags":384},"ESLint rules for React Hooks","ESLint Plugin React Hooks","https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks",[355,385,386,387,388,18],"eslint","linting","hooks","javascript",{"githubOwner":390,"githubRepo":355,"locale":24,"slug":391,"type":193},"facebook","eslint-plugin-react-hooks",{"extract":393,"llm":395},{"commitSha":394,"license":225},"9635257c1b557acc81f95b1e974a54c752e703a2",{"promptVersionExtension":170,"promptVersionScoring":171,"score":396,"targetMarket":176,"tier":177},99,{"repoId":398},"kd73v9dy7vwq94hgzc7eh43b9s865rhq",{"anyEnrichmentAt":400,"extractAt":401,"githubAt":400,"llmAt":402,"updatedAt":402},1778054428301,1778054425877,1778054588390,{"_creationTime":404,"_id":405,"community":406,"display":407,"identity":419,"providers":421,"relations":425,"workflow":427},1778053689272.9238,"k17a5hw81fhwybk1wxavs6mvjs8676ca",{"reviewCount":8},{"description":408,"installMethods":409,"name":410,"sourceUrl":411,"tags":412},"Set up a new Prisma Postgres database and connect it to a local project using the Management API. Use when asked to \"set up a database\", \"create a Prisma Postgres project\", \"get a connection string\", \"connect my app to Prisma Postgres\", or \"provision a database\".",{},"Prisma Postgres Setup","https://github.com/prisma/skills/tree/HEAD/prisma-postgres-setup",[413,414,415,416,417,306,18,418],"prisma","postgres","database","setup","connection","node-js",{"githubOwner":413,"githubRepo":209,"locale":24,"slug":420,"type":193},"prisma-postgres-setup",{"extract":422,"llm":424},{"commitSha":423,"license":225},"741a74fdafc1bf61fa208c2f73878be688cba263",{"promptVersionExtension":170,"promptVersionScoring":171,"score":396,"targetMarket":176,"tier":177},{"repoId":426},"kd76h7swxyhk8405svecsqq7gh864y5s",{"anyEnrichmentAt":428,"extractAt":429,"githubAt":428,"llmAt":430,"updatedAt":430},1778053689723,1778053689272,1778053716548]