[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-skill-faizkhairi-session-end-en":3,"guides-for-faizkhairi-session-end":398,"similar-k17ffgc2zxs6hwg7v3xrzg0xv586nh7f-en":399},{"_creationTime":4,"_id":5,"children":6,"community":7,"display":9,"evaluation":15,"identity":215,"isFallback":200,"parentExtension":220,"providers":221,"relations":226,"repo":228,"tags":395,"workflow":396},1778686819279.591,"k17ffgc2zxs6hwg7v3xrzg0xv586nh7f",[],{"reviewCount":8},0,{"description":10,"installMethods":11,"name":13,"sourceUrl":14},"MUST use when user says 'bye', 'goodbye', 'good night', 'gnight', 'done for today', 'that's all', 'that's it', 'see you', 'see ya', 'let's stop', 'stopping here', 'wrapping up', 'signing off', 'closing down', 'done', 'finished for now', 'talk later', 'cya'. The user does NOT use slash commands — detect these natural session-ending phrases and run the full wrap-up automatically.",{"claudeCode":12},"faizkhairi/claude-code-blueprint","session-end","https://github.com/faizkhairi/claude-code-blueprint",{"_creationTime":16,"_id":17,"extensionId":5,"locale":18,"result":19,"trustSignals":198,"workflow":213},1778687092050.3623,"kn7bkcdzgkbhdpfg2nttzrenv986nmc3","en",{"checks":20,"evaluatedAt":166,"extensionSummary":167,"features":168,"nonGoals":174,"promptVersionExtension":179,"promptVersionScoring":180,"purpose":181,"rationale":182,"score":183,"summary":184,"tags":185,"targetMarket":191,"tier":192,"useCases":193},[21,26,29,32,36,39,43,46,50,54,58,61,64,68,72,76,80,83,86,89,92,95,98,102,105,109,113,117,120,124,127,131,134,137,140,143,146,149,153,156,159,162],{"category":22,"check":23,"severity":24,"summary":25},"Practical Utility","Problem relevance","pass","The description clearly outlines the user problem of detecting natural language session-ending phrases to automatically trigger a wrap-up process.",{"category":22,"check":27,"severity":24,"summary":28},"Unique selling proposition","This skill offers a distinct and valuable automation by detecting specific natural language cues for session closure, going beyond default LLM behavior to ensure a consistent wrap-up.",{"category":22,"check":30,"severity":24,"summary":31},"Production readiness","The skill covers the complete lifecycle of session-ending actions, including saving context, updating reminders, managing project state, and committing changes, making it ready for production workflows.",{"category":33,"check":34,"severity":24,"summary":35},"Scope","Single responsibility principle","The skill focuses solely on the process of gracefully ending a user session, encompassing saving state and diary entries, without extending into unrelated domains.",{"category":33,"check":37,"severity":24,"summary":38},"Description quality","The description accurately and concisely reflects the skill's behavior, detailing the specific phrases that trigger it and the automated wrap-up process.",{"category":40,"check":41,"severity":24,"summary":42},"Invocation","Precise Purpose","The purpose is precisely stated, naming the artifact (session context, diary, project context) and the user intent (ending the session naturally) with explicit trigger phrases and boundaries.",{"category":40,"check":44,"severity":24,"summary":45},"Concise Frontmatter","The frontmatter is concise and self-contained, clearly summarizing the core capability and trigger phrases within the recommended character limit.",{"category":47,"check":48,"severity":24,"summary":49},"Documentation","Concise Body","The SKILL.md body is well under the line limit, with deeper procedures and structure delegated to distinct sections and files.",{"category":51,"check":52,"severity":24,"summary":53},"Context","Progressive Disclosure","The SKILL.md outlines the overall flow and then details each step clearly, with sub-tasks like updating specific files and diary entries being easily discernible.",{"category":51,"check":55,"severity":56,"summary":57},"Forked exploration","not_applicable","This skill does not involve deep exploration or research; it performs a defined set of actions and does not require context forking.",{"category":22,"check":59,"severity":24,"summary":60},"Usage examples","The skill includes clear examples of the session-ending phrases and the expected output, demonstrating the full wrap-up process.",{"category":22,"check":62,"severity":24,"summary":63},"Edge cases","The skill handles edge cases such as 'significant' sessions for diary entries and mentions when certain updates might not apply (e.g., no registered project).",{"category":65,"check":66,"severity":56,"summary":67},"Code Execution","Tool Fallback","The skill relies on standard Claude Code internal tools and does not reference external MCP servers or custom tools that would require fallback.",{"category":69,"check":70,"severity":24,"summary":71},"Safety","Halt on unexpected state","The skill implicitly halts the workflow if a step fails by exiting non-zero, and specific instructions on when to skip diary entries are provided.",{"category":73,"check":74,"severity":24,"summary":75},"Portability","Cross-skill coupling","The skill is self-contained and does not rely on other specific skills being loaded; its functionality is independent.",{"category":77,"check":78,"severity":24,"summary":79},"Security","Secret Management","The skill does not handle or expose any secrets; its operations are confined to file system operations within a defined scope.",{"category":77,"check":81,"severity":24,"summary":82},"Injection","The skill operates on internal file paths and does not load or execute external data, mitigating injection risks.",{"category":77,"check":84,"severity":24,"summary":85},"Transitive Supply-Chain Grenades","The skill does not fetch external content at runtime or execute code from untrusted sources.",{"category":77,"check":87,"severity":24,"summary":88},"Sandbox Isolation","The skill operates within expected scopes, modifying files within the MemoryCore path and not attempting to access or change files outside of its designated area.",{"category":77,"check":90,"severity":24,"summary":91},"Sandbox escape primitives","The skill's operations are straightforward file manipulations and do not involve detached processes or retry loops around denied calls.",{"category":77,"check":93,"severity":24,"summary":94},"Data Exfiltration","The skill's operations are local file manipulations and do not involve any outbound network calls or submission of confidential data.",{"category":77,"check":96,"severity":24,"summary":97},"Hidden Text Tricks","The bundled content is free of hidden-steering tricks, using standard ASCII and Unicode characters.",{"category":99,"check":100,"severity":24,"summary":101},"Hooks","Opaque code execution","The skill's logic is presented in clear, readable steps within the SKILL.md, with no obfuscated code or runtime script fetching.",{"category":73,"check":103,"severity":24,"summary":104},"Structural Assumption","The skill makes reasonable assumptions about file paths within the MemoryCore structure and clearly documents these expected locations.",{"category":106,"check":107,"severity":24,"summary":108},"Trust","Issues Attention","Issues Opened (90d): 0, Issues Closed (90d): 0. The repository shows no open issues, indicating excellent engagement or a new project.",{"category":110,"check":111,"severity":24,"summary":112},"Versioning","Release Management","The extension's frontmatter includes a `name` and `description` which function as versioning signals, and the installation instructions do not reference 'main'.",{"category":114,"check":115,"severity":24,"summary":116},"Execution","Validation","Input validation is handled by the Claude Code agent's interpretation of the trigger phrases and the documented file paths.",{"category":77,"check":118,"severity":24,"summary":119},"Unguarded Destructive Operations","File modifications are essential to the skill's function and are clearly defined within the MemoryCore path. The 'significant session' check provides a gating mechanism for diary entries.",{"category":121,"check":122,"severity":24,"summary":123},"Errors","Error Handling","Errors during file operations would be caught by the underlying system, and the skill specifies conditional logic for diary entries, providing clear next steps.",{"category":65,"check":125,"severity":56,"summary":126},"Logging","The skill's operations are file modifications within a user-managed context, and explicit logging is not required for audit purposes beyond the git commit.",{"category":128,"check":129,"severity":24,"summary":130},"Compliance","GDPR","The skill only manipulates local file paths within the MemoryCore and does not process or transmit any personal data.",{"category":128,"check":132,"severity":24,"summary":133},"Target market","The skill operates on local file paths and has no regional dependencies, thus `targetMarket` is global.",{"category":73,"check":135,"severity":24,"summary":136},"Runtime stability","The skill relies on standard file system operations and Claude Code's internal capabilities, making it portable across supported environments.",{"category":47,"check":138,"severity":24,"summary":139},"README","The README.md file exists and provides a comprehensive overview of the Claude Code Blueprint project, including this skill's context within it.",{"category":33,"check":141,"severity":56,"summary":142},"Tool surface size","This is a single-function skill with a specific trigger and a defined workflow, not a collection of tools.",{"category":40,"check":144,"severity":56,"summary":145},"Overlapping near-synonym tools","As a single skill, there are no overlapping tools or near-synonyms to consider.",{"category":47,"check":147,"severity":24,"summary":148},"Phantom features","All advertised features (saving session, diary, project context, preferences, decisions, memory) have corresponding implementations in the SKILL.md.",{"category":150,"check":151,"severity":24,"summary":152},"Install","Installation instruction","The main README provides clear instructions on how to incorporate the blueprint, including this skill, into a project.",{"category":121,"check":154,"severity":24,"summary":155},"Actionable error messages","Error handling is implicit via the underlying Claude Code system's file operations. The skill clearly states conditions for skipping diary entries.",{"category":114,"check":157,"severity":56,"summary":158},"Pinned dependencies","The skill does not use third-party dependencies and relies on the Claude Code runtime environment.",{"category":33,"check":160,"severity":56,"summary":161},"Dry-run preview","The skill performs essential state management operations; a dry-run mode is not applicable as the actions are fundamental to saving progress.",{"category":163,"check":164,"severity":56,"summary":165},"Protocol","Idempotent retry & timeouts","The skill's operations are local file writes and do not involve remote calls or state-changing operations that require explicit idempotency or timeouts beyond the system's default handling.",1778687091936,"This skill detects natural language phrases indicating a user wants to end their session and automatically performs a comprehensive wrap-up. This includes saving the session context, updating user reminders, reflecting changes in project-specific context files, and optionally creating a diary entry if the session was significant. Finally, it commits and pushes these changes to a memory core, providing a clear summary of actions taken.",[169,170,171,172,173],"Detects natural language session-ending phrases","Automatically saves session context and state","Updates reminders and project-specific context","Conditionally logs significant sessions to a diary","Commits and pushes memory core changes",[175,176,177,178],"Handling slash commands for session termination","Performing actions unrelated to session closing and state saving","Automatically initiating new sessions or tasks","Managing external systems beyond the defined MemoryCore path","3.0.0","4.4.0","To ensure a consistent and automated graceful closing of user sessions, preserving work and facilitating continuity between sessions.","The skill is a polished and well-documented implementation of a crucial session-ending workflow. All checks passed, reflecting high quality and readiness for production use.",99,"A high-quality skill for automating graceful session wrap-ups, including saving context, diary, and project state.",[186,187,188,189,190],"session-management","workflow-automation","memory","diary","developer-tools","global","verified",[194,195,196,197],"When a user indicates they are finished for the day using phrases like 'bye' or 'done'","To ensure all progress and state are saved before ending an interaction","To maintain a structured diary of significant work sessions","To automatically update project status and next steps upon session conclusion",{"codeQuality":199,"collectedAt":201,"documentation":202,"maintenance":205,"security":210,"testCoverage":212},{"hasLockfile":200},false,1778687072820,{"descriptionLength":203,"readmeSize":204},380,15571,{"closedIssues90d":8,"forks":206,"hasChangelog":207,"openIssues90d":8,"pushedAt":208,"stars":209},9,true,1775640604000,22,{"hasNpmPackage":200,"license":211,"smitheryVerified":200},"MIT",{"hasCi":207,"hasTests":200},{"updatedAt":214},1778687092050,{"basePath":216,"githubOwner":217,"githubRepo":218,"locale":18,"slug":13,"type":219},"skills/session-end","faizkhairi","claude-code-blueprint","skill",null,{"evaluate":222,"extract":224},{"promptVersionExtension":179,"promptVersionScoring":180,"score":183,"tags":223,"targetMarket":191,"tier":192},[186,187,188,189,190],{"commitSha":225},"HEAD",{"repoId":227},"kd72pqjreqz441hvh7ff5nwts986m3gx",{"_creationTime":229,"_id":227,"identity":230,"providers":231,"workflow":391},1778686813142.0989,{"githubOwner":217,"githubRepo":218,"sourceUrl":14},{"classify":232,"discover":370,"github":373},{"commitSha":225,"extensions":233},[234,245,253,261,269,277,285,293,301,309,317,325,333,338,346,354,362],{"basePath":235,"description":236,"displayName":237,"installMethods":238,"rationale":239,"selectedPaths":240,"source":244,"sourceLanguage":18,"type":219},"skills/changelog","Generate a changelog from git history since a tag, date, or commit","changelog",{"claudeCode":12},"SKILL.md frontmatter at skills/changelog/SKILL.md",[241],{"path":242,"priority":243},"SKILL.md","mandatory","rule",{"basePath":246,"description":247,"displayName":248,"installMethods":249,"rationale":250,"selectedPaths":251,"source":244,"sourceLanguage":18,"type":219},"skills/db-check","Validate database schema integrity and check for common issues","db-check",{"claudeCode":12},"SKILL.md frontmatter at skills/db-check/SKILL.md",[252],{"path":242,"priority":243},{"basePath":254,"description":255,"displayName":256,"installMethods":257,"rationale":258,"selectedPaths":259,"source":244,"sourceLanguage":18,"type":219},"skills/deploy-check","MUST use before any git push to main/master/production, or when user mentions 'deploy', 'going live', 'push to prod', 'ready to ship', 'merge to main', 'release'. Also trigger before any npm publish for CLI tools. Also triggers on: 'audit', 'check vulnerabilities', 'are our deps safe?', 'npm audit', 'yarn audit'.","deploy-check",{"claudeCode":12},"SKILL.md frontmatter at skills/deploy-check/SKILL.md",[260],{"path":242,"priority":243},{"basePath":262,"description":263,"displayName":264,"installMethods":265,"rationale":266,"selectedPaths":267,"source":244,"sourceLanguage":18,"type":219},"skills/e2e-check","Run E2E tests or interactive browser verification. Triggers on: 'run e2e', 'e2e test', 'browser test', 'check in browser', 'verify UI', 'interactive test'.","e2e-check",{"claudeCode":12},"SKILL.md frontmatter at skills/e2e-check/SKILL.md",[268],{"path":242,"priority":243},{"basePath":270,"description":271,"displayName":272,"installMethods":273,"rationale":274,"selectedPaths":275,"source":244,"sourceLanguage":18,"type":219},"skills/elicit-requirements","Structured pre-feature requirements gathering. Run before writing any new feature or API endpoint to clarify scope, acceptance criteria, and technical constraints.","elicit-requirements",{"claudeCode":12},"SKILL.md frontmatter at skills/elicit-requirements/SKILL.md",[276],{"path":242,"priority":243},{"basePath":278,"description":279,"displayName":280,"installMethods":281,"rationale":282,"selectedPaths":283,"source":244,"sourceLanguage":18,"type":219},"skills/init-project","Scaffold a new project with standard structure, configs, and CLAUDE.md","init-project",{"claudeCode":12},"SKILL.md frontmatter at skills/init-project/SKILL.md",[284],{"path":242,"priority":243},{"basePath":286,"description":287,"displayName":288,"installMethods":289,"rationale":290,"selectedPaths":291,"source":244,"sourceLanguage":18,"type":219},"skills/load-session","Restore session context at the start of every new conversation. Auto-triggers on session start, or when user says 'continue', 'what were we doing', 'where did we leave off'.","load-session",{"claudeCode":12},"SKILL.md frontmatter at skills/load-session/SKILL.md",[292],{"path":242,"priority":243},{"basePath":294,"description":295,"displayName":296,"installMethods":297,"rationale":298,"selectedPaths":299,"source":244,"sourceLanguage":18,"type":219},"skills/register-project","Register an existing project in AI MemoryCore. Use when starting work on a new repo or when a project needs its own context file. Triggers on: 'register project', 'add project to memory', 'track this project', 'create project file'.","register-project",{"claudeCode":12},"SKILL.md frontmatter at skills/register-project/SKILL.md",[300],{"path":242,"priority":243},{"basePath":302,"description":303,"displayName":304,"installMethods":305,"rationale":306,"selectedPaths":307,"source":244,"sourceLanguage":18,"type":219},"skills/review","Run a comprehensive multi-perspective code review on recent changes. Also triggers on 'is this secure?', 'security review', 'check for vulnerabilities', 'could this be exploited?' for security-focused review.","review",{"claudeCode":12},"SKILL.md frontmatter at skills/review/SKILL.md",[308],{"path":242,"priority":243},{"basePath":310,"description":311,"displayName":312,"installMethods":313,"rationale":314,"selectedPaths":315,"source":244,"sourceLanguage":18,"type":219},"skills/review-diff","Scan git diffs for project-specific anti-patterns. Triggers on: 'scan diff', 'check diff', 'anti-pattern check', 'pattern scan', 'review changes'.","review-diff",{"claudeCode":12},"SKILL.md frontmatter at skills/review-diff/SKILL.md",[316],{"path":242,"priority":243},{"basePath":318,"description":319,"displayName":320,"installMethods":321,"rationale":322,"selectedPaths":323,"source":244,"sourceLanguage":18,"type":219},"skills/save-diary","MUST use when user says 'save diary', 'write diary', 'diary entry', 'update diary', or 'document session'. Also auto-trigger at the end of any significant session (feature shipped, major bug fixed, architecture decision, new project started).","save-diary",{"claudeCode":12},"SKILL.md frontmatter at skills/save-diary/SKILL.md",[324],{"path":242,"priority":243},{"basePath":326,"description":327,"displayName":328,"installMethods":329,"rationale":330,"selectedPaths":331,"source":244,"sourceLanguage":18,"type":219},"skills/save-session","MUST use when user says 'save', 'save session', or explicitly wants to preserve session state. {USER_NAME} does NOT use slash commands — also trigger proactively when significant work has been completed and session context should be persisted. For session endings (bye/done/goodbye), use the session-end skill instead which combines save-session + save-diary.","save-session",{"claudeCode":12},"SKILL.md frontmatter at skills/save-session/SKILL.md",[332],{"path":242,"priority":243},{"basePath":216,"description":10,"displayName":13,"installMethods":334,"rationale":335,"selectedPaths":336,"source":244,"sourceLanguage":18,"type":219},{"claudeCode":12},"SKILL.md frontmatter at skills/session-end/SKILL.md",[337],{"path":242,"priority":243},{"basePath":339,"description":340,"displayName":341,"installMethods":342,"rationale":343,"selectedPaths":344,"source":244,"sourceLanguage":18,"type":219},"skills/sprint-plan","MUST use when user describes a multi-step feature to build, says 'let's build', 'new project', 'let's implement', or when a task clearly requires more than 3 steps and no plan exists yet. Do NOT trigger for simple additions like adding a comment, renaming a variable, or single-file changes.","sprint-plan",{"claudeCode":12},"SKILL.md frontmatter at skills/sprint-plan/SKILL.md",[345],{"path":242,"priority":243},{"basePath":347,"description":348,"displayName":349,"installMethods":350,"rationale":351,"selectedPaths":352,"source":244,"sourceLanguage":18,"type":219},"skills/status","Show project status dashboard across registered repositories","status",{"claudeCode":12},"SKILL.md frontmatter at skills/status/SKILL.md",[353],{"path":242,"priority":243},{"basePath":355,"description":356,"displayName":357,"installMethods":358,"rationale":359,"selectedPaths":360,"source":244,"sourceLanguage":18,"type":219},"skills/tech-radar","MUST use when user asks 'what's new?', 'any updates?', 'latest versions?', 'breaking changes?', 'should we upgrade?', 'what changed in X?', or when starting a new project to check if dependencies are current. Also trigger proactively at the start of major upgrade sessions.","tech-radar",{"claudeCode":12},"SKILL.md frontmatter at skills/tech-radar/SKILL.md",[361],{"path":242,"priority":243},{"basePath":363,"description":364,"displayName":365,"installMethods":366,"rationale":367,"selectedPaths":368,"source":244,"sourceLanguage":18,"type":219},"skills/test-check","MUST use after implementing new features or bug fixes, when user asks 'run the tests', 'are tests passing?', 'test this', or before any deployment step. Also trigger when tests were previously failing and fixes were applied.","test-check",{"claudeCode":12},"SKILL.md frontmatter at skills/test-check/SKILL.md",[369],{"path":242,"priority":243},{"sources":371},[372],"manual",{"closedIssues90d":8,"description":374,"forks":206,"homepage":375,"license":211,"openIssues90d":8,"pushedAt":208,"readmeSize":204,"stars":209,"topics":376},"A battle-tested, framework-agnostic reference architecture for Claude Code. Beginner-friendly with graduated adoption. 11 agents, 17 skills, 10 hooks, 5 rules -- with reasoning behind every decision.","https://github.com/faizkhairi/claude-code-blueprint#readme",[377,378,379,380,381,382,190,383,384,385,386,387,388,389,390],"agents","ai-coding","claude","claude-code","codex","cursor","gemini-cli","hooks","mcp","productivity","reference-architecture","windsurf","beginner-friendly","framework-agnostic",{"classifiedAt":392,"discoverAt":393,"extractAt":394,"githubAt":394,"updatedAt":392},1778686818847,1778686813142,1778686817065,[190,189,188,186,187],{"evaluatedAt":214,"extractAt":397,"updatedAt":214},1778686819279,[],[400,430,459,485,513,541],{"_creationTime":401,"_id":402,"community":403,"display":404,"identity":410,"providers":415,"relations":423,"tags":425,"workflow":426},1778696473190.3645,"k175pwr78zcnem11h4am251frn86mh2m",{"reviewCount":8},{"description":405,"installMethods":406,"name":408,"sourceUrl":409},"Run /handoff to capture session data, then write a phased implementation plan that references it. Creates beads for tracking.",{"claudeCode":407},"REMvisual/claude-handoff","Claude Handoff","https://github.com/REMvisual/claude-handoff",{"basePath":411,"githubOwner":412,"githubRepo":413,"locale":18,"slug":414,"type":219},"skills/handoffplan","REMvisual","claude-handoff","handoffplan",{"evaluate":416,"extract":422},{"promptVersionExtension":179,"promptVersionScoring":180,"score":417,"tags":418,"targetMarket":191,"tier":192},100,[419,420,186,421,190],"context","planning","code-review",{"commitSha":225,"license":211},{"repoId":424},"kd751dv4xqaztg0deehhxazcjn86mynf",[421,419,190,420,186],{"evaluatedAt":427,"extractAt":428,"updatedAt":429},1778696514353,1778696473190,1778696537692,{"_creationTime":431,"_id":432,"community":433,"display":434,"identity":440,"providers":444,"relations":451,"tags":454,"workflow":455},1778688322101.826,"k179fdg8n1dygkq5yatjqcesm986m4ck",{"reviewCount":8},{"description":435,"installMethods":436,"name":438,"sourceUrl":439},"Use when the user asks about topics discussed in the current session, wants to see a topic list, or asks what has been talked about.",{"claudeCode":437},"hatawong/claude-recap","list-topics","https://github.com/hatawong/claude-recap",{"basePath":441,"githubOwner":442,"githubRepo":443,"locale":18,"slug":438,"type":219},"skills/list-topics","hatawong","claude-recap",{"evaluate":445,"extract":450},{"promptVersionExtension":179,"promptVersionScoring":180,"score":417,"tags":446,"targetMarket":191,"tier":192},[188,186,447,448,449],"markdown","cli","automation",{"commitSha":225},{"parentExtensionId":452,"repoId":453},"k17b9bmvrv1a5e41w678q1yvrh86m81g","kd78y3gm1ky53msejxede6b4x986nqyc",[449,448,447,188,186],{"evaluatedAt":456,"extractAt":457,"updatedAt":458},1778688418474,1778688322101,1778688561381,{"_creationTime":460,"_id":461,"community":462,"display":463,"identity":469,"providers":473,"relations":479,"tags":481,"workflow":482},1778694240519.7407,"k1768d4q1hqa8kxf56x9qa0bgh86n843",{"reviewCount":8},{"description":464,"installMethods":465,"name":467,"sourceUrl":468},"Lightweight session initialization with context recovery",{"claudeCode":466},"mshadmanrahman/pm-pilot","session-init","https://github.com/mshadmanrahman/pm-pilot",{"basePath":470,"githubOwner":471,"githubRepo":472,"locale":18,"slug":467,"type":219},"skills/productivity/session-init","mshadmanrahman","pm-pilot",{"evaluate":474,"extract":478},{"promptVersionExtension":179,"promptVersionScoring":180,"score":183,"tags":475,"targetMarket":191,"tier":192},[186,476,386,187,477],"context-recovery","initialization",{"commitSha":225},{"repoId":480},"kd728wqst6vwd95ymycxb97nrx86mnsn",[476,477,386,186,187],{"evaluatedAt":483,"extractAt":484,"updatedAt":483},1778694630730,1778694240519,{"_creationTime":486,"_id":487,"community":488,"display":489,"identity":495,"providers":498,"relations":506,"tags":509,"workflow":510},1778699018122.8052,"k1724eg9dj5dp6j1f2hxpdmja586mg1p",{"reviewCount":8},{"description":490,"installMethods":491,"name":493,"sourceUrl":494},"Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications. Use when implementing complex type logic, creating reusable type utilities, or ensuring compile-time type safety in TypeScript projects.",{"claudeCode":492},"wshobson/agents","typescript-advanced-types","https://github.com/wshobson/agents",{"basePath":496,"githubOwner":497,"githubRepo":377,"locale":18,"slug":493,"type":219},"plugins/javascript-typescript/skills/typescript-advanced-types","wshobson",{"evaluate":499,"extract":505},{"promptVersionExtension":179,"promptVersionScoring":180,"score":417,"tags":500,"targetMarket":191,"tier":192},[501,502,503,504,190],"typescript","types","generics","programming",{"commitSha":225},{"parentExtensionId":507,"repoId":508},"k17821k05dymw6mmaehq84b46986mf3f","kd74de64zj0axtg5b8t7eqqe2x86nske",[190,503,504,502,501],{"evaluatedAt":511,"extractAt":512,"updatedAt":511},1778701655608,1778699018122,{"_creationTime":514,"_id":515,"community":516,"display":517,"identity":523,"providers":528,"relations":534,"tags":537,"workflow":538},1778696691708.329,"k170yjw596k3cg892bq130jyd186mhyz",{"reviewCount":8},{"description":518,"installMethods":519,"name":521,"sourceUrl":522},"Validate a Claude Code plugin structure, frontmatter, and MCP tool references",{"claudeCode":520},"ruvnet/ruflo","Validate Plugin","https://github.com/ruvnet/ruflo",{"basePath":524,"githubOwner":525,"githubRepo":526,"locale":18,"slug":527,"type":219},"plugins/ruflo-plugin-creator/skills/validate-plugin","ruvnet","ruflo","validate-plugin",{"evaluate":529,"extract":533},{"promptVersionExtension":179,"promptVersionScoring":180,"score":417,"tags":530,"targetMarket":191,"tier":192},[531,532,190,380,385],"validation","plugin",{"commitSha":225,"license":211},{"parentExtensionId":535,"repoId":536},"k17f4y1y2y777p7zrxxhbnf03n86mr5j","kd7ed28gj8n0y3msk5dzrp05zs86nqtc",[380,190,385,532,531],{"evaluatedAt":539,"extractAt":540,"updatedAt":539},1778701241052,1778696691708,{"_creationTime":542,"_id":543,"community":544,"display":545,"identity":549,"providers":551,"relations":559,"tags":561,"workflow":562},1778696691708.3264,"k179thjzaw5kepc7zhdj9sat3n86mcqp",{"reviewCount":8},{"description":546,"installMethods":547,"name":548,"sourceUrl":522},"Validate pending migrations for foreign key consistency, rollback safety, and best practices",{"claudeCode":520},"migrate-validate",{"basePath":550,"githubOwner":525,"githubRepo":526,"locale":18,"slug":548,"type":219},"plugins/ruflo-migrations/skills/migrate-validate",{"evaluate":552,"extract":558},{"promptVersionExtension":179,"promptVersionScoring":180,"score":417,"tags":553,"targetMarket":191,"tier":192},[554,555,556,531,557,190],"database","migrations","sql","code-quality",{"commitSha":225},{"parentExtensionId":560,"repoId":536},"k176me0sh9b6bc3gzttnywx4w986njzh",[557,554,190,555,556,531],{"evaluatedAt":563,"extractAt":540,"updatedAt":563},1778701008912]