[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-plugin-anthropics-hookify-de":3,"guides-for-anthropics-hookify":743,"similar-k17edtw3mt7c1d6gd2x18s6c5x86m0b4-de":744},{"_creationTime":4,"_id":5,"children":6,"community":46,"display":47,"evaluation":52,"identity":300,"isFallback":297,"parentExtension":303,"providers":335,"relations":342,"repo":343,"tags":741,"workflow":742},1778675383815.6462,"k17edtw3mt7c1d6gd2x18s6c5x86m0b4",[7],{"_creationTime":8,"_id":9,"community":10,"display":12,"identity":18,"providers":25,"relations":40,"tags":42,"workflow":43},1778675383815.6482,"k171dv6t720h26aqarw7ezhahh86nvvm",{"reviewCount":11},0,{"description":13,"installMethods":14,"name":16,"sourceUrl":17},"This skill should be used when the user asks to \"create a hookify rule\", \"write a hook rule\", \"configure hookify\", \"add a hookify rule\", or needs guidance on hookify rule syntax and patterns.",{"claudeCode":15},"anthropics/claude-code","Writing Hookify Rules","https://github.com/anthropics/claude-code",{"basePath":19,"githubOwner":20,"githubRepo":21,"locale":22,"slug":23,"type":24},"plugins/hookify/skills/writing-rules","anthropics","claude-code","en","writing-rules","skill",{"evaluate":26,"extract":37},{"promptVersionExtension":27,"promptVersionScoring":28,"score":29,"tags":30,"targetMarket":35,"tier":36},"3.0.0","4.4.0",75,[31,32,33,34],"code-analysis","rules-engine","developer-tools","automation","global","community",{"commitSha":38,"license":39},"HEAD","All rights reserved",{"parentExtensionId":5,"repoId":41},"kd7d2pdr9h079xr7vcg3zyy2nx86mab0",[34,31,33,32],{"evaluatedAt":44,"extractAt":45,"updatedAt":44},1778675707167,1778675383815,{"reviewCount":11},{"description":48,"installMethods":49,"name":51,"sourceUrl":17},"Easily create hooks to prevent unwanted behaviors by analyzing conversation patterns",{"claudeCode":50},"hookify","Hookify Plugin",{"_creationTime":53,"_id":54,"extensionId":5,"locale":22,"result":55,"trustSignals":281,"workflow":298},1778675531089.434,"kn7eazpwy45yvpmhjxzetsehd186np5p",{"checks":56,"evaluatedAt":242,"extensionSummary":243,"features":244,"nonGoals":250,"practices":254,"prerequisites":258,"promptVersionExtension":27,"promptVersionScoring":28,"purpose":260,"rationale":261,"score":262,"summary":263,"tags":264,"targetMarket":35,"tier":36,"useCases":269,"workflow":274},[57,62,65,68,72,75,79,83,86,89,93,97,101,105,108,111,114,117,120,123,127,131,136,140,144,147,150,153,157,160,163,166,169,172,175,179,183,187,190,194,197,200,203,206,209,212,215,218,221,224,228,231,234,238],{"category":58,"check":59,"severity":60,"summary":61},"Practical Utility","Problem relevance","pass","The description clearly states the problem of preventing unwanted behaviors by analyzing conversation patterns.",{"category":58,"check":63,"severity":60,"summary":64},"Unique selling proposition","The plugin offers a distinct approach to creating hooks via markdown files and analyzing conversation patterns, going beyond simple prompting.",{"category":58,"check":66,"severity":60,"summary":67},"Production readiness","The plugin provides a complete lifecycle for creating, managing, and applying hooks, making it suitable for real workflows.",{"category":69,"check":70,"severity":60,"summary":71},"Scope","Single responsibility principle","The plugin focuses on creating and managing hooks based on defined rules, a coherent and single domain.",{"category":69,"check":73,"severity":60,"summary":74},"Description quality","The displayed description accurately reflects the plugin's core functionality of creating hooks to prevent unwanted behaviors.",{"category":76,"check":77,"severity":60,"summary":78},"Invocation","Scoped tools","The plugin utilizes specific tools like 'Bash', 'Edit', and 'Write' within its commands, rather than a single generalist tool.",{"category":80,"check":81,"severity":60,"summary":82},"Documentation","Configuration & parameter reference","The README provides comprehensive documentation for rule configuration, including event types, operators, fields, and pattern syntax.",{"category":69,"check":84,"severity":60,"summary":85},"Tool naming","Tool names like '/hookify', '/hookify:list', and '/hookify:configure' are descriptive and relevant to the plugin's functionality.",{"category":69,"check":87,"severity":60,"summary":88},"Minimal I/O surface","Input parameters for commands are well-defined, and output from hooks is structured JSON, minimizing unnecessary data exposure.",{"category":90,"check":91,"severity":60,"summary":92},"License","License usability","The plugin is licensed under the MIT License, which is a permissive open-source license.",{"category":94,"check":95,"severity":60,"summary":96},"Maintenance","Commit recency","The last commit was on May 12, 2026, indicating recent maintenance.",{"category":94,"check":98,"severity":99,"summary":100},"Dependency Management","not_applicable","The plugin uses only standard Python libraries, so no third-party dependencies require management.",{"category":102,"check":103,"severity":99,"summary":104},"Security","Secret Management","The plugin does not appear to handle or expose any secrets.",{"category":102,"check":106,"severity":60,"summary":107},"Injection","The plugin explicitly handles rules as data and uses Python regex for patterns, avoiding code injection risks from external files.",{"category":102,"check":109,"severity":60,"summary":110},"Transitive Supply-Chain Grenades","The plugin relies on bundled Python scripts and local markdown files, avoiding runtime downloads or remote code execution.",{"category":102,"check":112,"severity":60,"summary":113},"Sandbox Isolation","The hooks operate within the Python environment and interact with local files in the `.claude/` directory, respecting sandbox boundaries.",{"category":102,"check":115,"severity":60,"summary":116},"Sandbox escape primitives","The Python scripts do not appear to use detached process spawns or retry loops around denied calls.",{"category":102,"check":118,"severity":60,"summary":119},"Data Exfiltration","The plugin processes local configuration files and does not make outbound calls that could exfiltrate data.",{"category":102,"check":121,"severity":60,"summary":122},"Hidden Text Tricks","The bundled content and markdown files appear free of hidden steering tricks or obfuscation.",{"category":124,"check":125,"severity":60,"summary":126},"Hooks","Opaque code execution","The hook scripts are provided as readable Python source code.",{"category":128,"check":129,"severity":60,"summary":130},"Portability","Structural Assumption","The plugin correctly references rules from the `.claude/` directory relative to the current working directory.",{"category":132,"check":133,"severity":134,"summary":135},"Trust","Issues Attention","warning","With 9462 issues opened and 22831 closed in the last 90 days, the closure rate is approximately 71%, but the high volume of open issues suggests potential delays in maintainer response.",{"category":137,"check":138,"severity":60,"summary":139},"Versioning","Release Management","The plugin declares version 0.1.0 in its manifest, indicating a versioned release.",{"category":141,"check":142,"severity":60,"summary":143},"Code Execution","Validation","The Python hooks use standard libraries and regex for pattern matching, and rule definitions are parsed from YAML, implying validation.",{"category":102,"check":145,"severity":60,"summary":146},"Unguarded Destructive Operations","The plugin's core functionality is rule definition and checking, not direct destructive operations, and any blocking actions are behind user-defined rules.",{"category":141,"check":148,"severity":60,"summary":149},"Error Handling","The Python hooks include try-except blocks to catch errors, print messages to stderr, and always exit with status 0, ensuring the agent workflow is not interrupted by hook failures.",{"category":141,"check":151,"severity":99,"summary":152},"Logging","The plugin does not perform destructive actions or outbound calls that necessitate local audit logging.",{"category":154,"check":155,"severity":99,"summary":156},"Compliance","GDPR","The plugin operates on local configuration and user-defined patterns, not personal data.",{"category":154,"check":158,"severity":60,"summary":159},"Target market","The plugin is language-agnostic and operates on local files, making it globally usable.",{"category":128,"check":161,"severity":60,"summary":162},"Runtime stability","The plugin relies on standard Python libraries and operates with local file I/O, ensuring multi-platform compatibility.",{"category":80,"check":164,"severity":60,"summary":165},"README","The README file exists and clearly states the plugin's purpose and usage instructions.",{"category":69,"check":167,"severity":60,"summary":168},"Tool surface size","The plugin exposes a reasonable number of commands: /hookify, /hookify:list, /hookify:configure, and /hookify:help.",{"category":76,"check":170,"severity":99,"summary":171},"Overlapping near-synonym tools","The plugin's commands are distinct and do not have overlapping synonyms.",{"category":80,"check":173,"severity":60,"summary":174},"Phantom features","All features mentioned in the README, such as rule creation and management commands, are implemented and verifiable in the source code.",{"category":176,"check":177,"severity":60,"summary":178},"Install","Installation instruction","The README provides installation instructions and a copy-pasteable example invocation.",{"category":180,"check":181,"severity":60,"summary":182},"Errors","Actionable error messages","Errors within the hooks are reported with system messages and do not halt the agent's workflow, allowing for graceful error handling.",{"category":184,"check":185,"severity":60,"summary":186},"Execution","Pinned dependencies","The Python scripts use shebangs, and no external dependencies are required, indicating a self-contained execution environment.",{"category":69,"check":188,"severity":99,"summary":189},"Dry-run preview","The plugin's primary function is defining rules, not performing state-changing operations that would require a dry-run mode.",{"category":191,"check":192,"severity":60,"summary":193},"Protocol","Idempotent retry & timeouts","The hooks have defined timeouts, and their operation on local files is inherently safe against retry issues.",{"category":154,"check":195,"severity":60,"summary":196},"Telemetry opt-in","The plugin does not appear to emit any telemetry, adhering to opt-in principles.",{"category":76,"check":198,"severity":60,"summary":199},"Name collisions","The plugin's commands (/hookify, etc.) are distinct and do not conflict with built-in Claude Code commands.",{"category":76,"check":201,"severity":60,"summary":202},"Hooks-off mechanism","Rules can be disabled by setting `enabled: false` in their frontmatter or by deleting the rule file, providing a mechanism to turn off hooks.",{"category":76,"check":204,"severity":60,"summary":205},"Hook matcher tightness","Hooks are configured to trigger based on specific event types (bash, file, stop, prompt) and associated patterns, not broad wildcards.",{"category":102,"check":207,"severity":60,"summary":208},"Hook security","The hooks operate on local files and do not perform destructive or network-touching actions by default, and rule definitions are user-controlled.",{"category":124,"check":210,"severity":99,"summary":211},"Silent prompt rewriting","The plugin's hooks do not modify user prompts; they evaluate existing tool usage or stop events.",{"category":102,"check":213,"severity":99,"summary":214},"Permission Hook","The plugin does not utilize `PermissionRequest` hooks.",{"category":154,"check":216,"severity":60,"summary":217},"Hook privacy","The plugin's hooks process local configuration and do not send data to external services.",{"category":141,"check":219,"severity":60,"summary":220},"Hook dependency","The hook scripts are short, readable Python files located within the plugin's repository.",{"category":80,"check":222,"severity":60,"summary":223},"Feature Transparency","The README clearly describes the plugin's functionality, how rules are defined, and the available commands.",{"category":225,"check":226,"severity":60,"summary":227},"Convention","Layout convention adherence","The plugin follows Claude Code conventions with hooks in `hooks/` and commands in `commands/`, and the README documents usage.",{"category":225,"check":229,"severity":60,"summary":230},"Plugin state","The plugin stores rule configuration in the user's project directory (`.claude/`), which aligns with state management practices.",{"category":102,"check":232,"severity":99,"summary":233},"Keychain-stored secrets","The plugin does not handle secrets that would require keychain storage.",{"category":235,"check":236,"severity":99,"summary":237},"Dependencies","Tagged release sourcing","The plugin does not bundle external MCP servers.",{"category":239,"check":240,"severity":60,"summary":241},"Installation","Clean uninstall","The plugin operates by reading local files and running Python scripts, so uninstalling should remove all its components without leaving background processes.",1778675530727,"This plugin allows users to create custom hooks using simple markdown files to define rules that prevent specific behaviors by analyzing conversation patterns or tool usage. It supports various event types like bash commands, file edits, and stop events, with options to warn or block actions.",[245,246,247,248,249],"Create custom hooks via markdown files","Analyze conversations for unwanted behaviors","Define rules for bash, file, stop, and prompt events","Block or warn on rule matches","Interactive rule management commands",[251,252,253],"Replacing core Claude Code functionality","Managing external dependencies","Providing a full-fledged security auditing tool",[255,256,257],"Rule definition","Behavioral analysis","Workflow enforcement",[259],"Python 3.7+","Empower users to proactively prevent unwanted or risky behaviors by easily defining custom rules based on conversation analysis and explicit instructions.","The plugin is well-documented, secure, and adheres to conventions. The only minor finding is related to the high volume of issues, which might indicate slower response times.",95,"A robust plugin for defining and managing custom rules to prevent unwanted behaviors in Claude Code sessions.",[265,34,266,267,268],"hooks","security","configuration","compliance",[270,271,272,273],"Preventing the use of dangerous bash commands like `rm -rf`","Warning about sensitive information in file edits","Ensuring best practices like running tests before stopping","Enforcing coding standards by detecting debug statements",[275,276,277,278,279,280],"User invokes `/hookify` command","Plugin analyzes conversation or uses provided instructions","User selects behaviors and actions (warn/block)","Plugin generates `.claude/hookify.{rule-name}.local.md` files","Hooks dynamically load rules on next tool use","Plugin enforces defined rules during agent execution",{"codeQuality":282,"collectedAt":284,"documentation":285,"maintenance":288,"security":295,"testCoverage":296},{"hasLockfile":283},false,1778675510143,{"descriptionLength":286,"readmeSize":287},84,2873,{"closedIssues90d":289,"forks":290,"hasChangelog":283,"manifestVersion":291,"openIssues90d":292,"pushedAt":293,"stars":294},22831,20310,"0.1.0",9462,1778620184000,123134,{"hasNpmPackage":283,"smitheryVerified":283},{"hasCi":297,"hasTests":283},true,{"updatedAt":299},1778675531089,{"basePath":301,"githubOwner":20,"githubRepo":21,"locale":22,"slug":50,"type":302},"plugins/hookify","plugin",{"_creationTime":304,"_id":305,"community":306,"display":307,"identity":311,"parentExtension":314,"providers":315,"relations":331,"tags":332,"workflow":333},1778675383815.6443,"k17ft5f5kw1crrqpbr5ez2tfx586mxk0",{"reviewCount":11},{"description":308,"installMethods":309,"name":310,"sourceUrl":17},"Bundled plugins for Claude Code including Agent SDK development tools, PR review toolkit, and commit workflows",{"claudeCode":15},"claude-code-plugins",{"basePath":312,"githubOwner":20,"githubRepo":21,"locale":22,"slug":21,"type":313},"","marketplace",null,{"evaluate":316,"extract":325},{"promptVersionExtension":317,"promptVersionScoring":28,"score":318,"tags":319,"targetMarket":35,"tier":36},"3.1.0",79,[21,320,321,322,323,324],"plugins","development","productivity","code-review","agent-sdk",{"commitSha":38,"marketplace":326,"plugin":329},{"name":310,"pluginCount":327,"version":328},13,"1.0.0",{"mcpCount":11,"provider":330,"skillCount":11},"classify",{"repoId":41},[324,21,323,321,320,322],{"evaluatedAt":334,"extractAt":45,"updatedAt":334},1778675396350,{"evaluate":336,"extract":338},{"promptVersionExtension":27,"promptVersionScoring":28,"score":262,"tags":337,"targetMarket":35,"tier":36},[265,34,266,267,268],{"commitSha":38,"license":339,"plugin":340},"MIT",{"mcpCount":11,"provider":330,"skillCount":341},1,{"parentExtensionId":305,"repoId":41},{"_creationTime":344,"_id":41,"identity":345,"providers":346,"workflow":737},1778675378145.0718,{"githubOwner":20,"githubRepo":21,"sourceUrl":17},{"classify":347,"discover":730,"github":733},{"commitSha":38,"extensions":348},[349,362,378,390,400,415,426,443,454,483,493,509,531,548,559,571,578,583,604,631,659,679,701,720],{"basePath":312,"description":308,"displayName":310,"installMethods":350,"rationale":351,"selectedPaths":352,"source":361,"sourceLanguage":22,"type":313},{"claudeCode":15},"marketplace.json at .claude-plugin/marketplace.json",[353,356,358],{"path":354,"priority":355},".claude-plugin/marketplace.json","mandatory",{"path":357,"priority":355},"README.md",{"path":359,"priority":360},"LICENSE.md","high","rule",{"basePath":363,"description":364,"displayName":365,"installMethods":366,"rationale":367,"selectedPaths":368,"source":361,"sourceLanguage":22,"type":302},"plugins/agent-sdk-dev","Claude Agent SDK Development Plugin","agent-sdk-dev",{"claudeCode":365},"plugin manifest at plugins/agent-sdk-dev/.claude-plugin/plugin.json",[369,371,372,374,376],{"path":370,"priority":355},".claude-plugin/plugin.json",{"path":357,"priority":355},{"path":373,"priority":360},"agents/agent-sdk-verifier-py.md",{"path":375,"priority":360},"agents/agent-sdk-verifier-ts.md",{"path":377,"priority":360},"commands/new-sdk-app.md",{"basePath":379,"description":380,"displayName":381,"installMethods":382,"rationale":383,"selectedPaths":384,"source":361,"sourceLanguage":22,"type":302},"plugins/claude-opus-4-5-migration","Migrate your code and prompts from Sonnet 4.x and Opus 4.1 to Opus 4.5.","claude-opus-4-5-migration",{"claudeCode":381},"plugin manifest at plugins/claude-opus-4-5-migration/.claude-plugin/plugin.json",[385,386,387],{"path":370,"priority":355},{"path":357,"priority":355},{"path":388,"priority":389},"skills/claude-opus-4-5-migration/SKILL.md","medium",{"basePath":391,"description":392,"displayName":323,"installMethods":393,"rationale":394,"selectedPaths":395,"source":361,"sourceLanguage":22,"type":302},"plugins/code-review","Automated code review for pull requests using multiple specialized agents with confidence-based scoring",{"claudeCode":323},"plugin manifest at plugins/code-review/.claude-plugin/plugin.json",[396,397,398],{"path":370,"priority":355},{"path":357,"priority":355},{"path":399,"priority":360},"commands/code-review.md",{"basePath":401,"description":402,"displayName":403,"installMethods":404,"rationale":405,"selectedPaths":406,"source":361,"sourceLanguage":22,"type":302},"plugins/commit-commands","Streamline your git workflow with simple commands for committing, pushing, and creating pull requests","commit-commands",{"claudeCode":403},"plugin manifest at plugins/commit-commands/.claude-plugin/plugin.json",[407,408,409,411,413],{"path":370,"priority":355},{"path":357,"priority":355},{"path":410,"priority":360},"commands/clean_gone.md",{"path":412,"priority":360},"commands/commit-push-pr.md",{"path":414,"priority":360},"commands/commit.md",{"basePath":416,"description":417,"displayName":418,"installMethods":419,"rationale":420,"selectedPaths":421,"source":361,"sourceLanguage":22,"type":302},"plugins/explanatory-output-style","Adds educational insights about implementation choices and codebase patterns (mimics the deprecated Explanatory output style)","explanatory-output-style",{"claudeCode":418},"plugin manifest at plugins/explanatory-output-style/.claude-plugin/plugin.json",[422,423,424],{"path":370,"priority":355},{"path":357,"priority":355},{"path":425,"priority":360},"hooks/hooks.json",{"basePath":427,"description":428,"displayName":429,"installMethods":430,"rationale":431,"selectedPaths":432,"source":361,"sourceLanguage":22,"type":302},"plugins/feature-dev","Comprehensive feature development workflow with specialized agents for codebase exploration, architecture design, and quality review","feature-dev",{"claudeCode":429},"plugin manifest at plugins/feature-dev/.claude-plugin/plugin.json",[433,434,435,437,439,441],{"path":370,"priority":355},{"path":357,"priority":355},{"path":436,"priority":360},"agents/code-architect.md",{"path":438,"priority":360},"agents/code-explorer.md",{"path":440,"priority":360},"agents/code-reviewer.md",{"path":442,"priority":360},"commands/feature-dev.md",{"basePath":444,"description":445,"displayName":446,"installMethods":447,"rationale":448,"selectedPaths":449,"source":361,"sourceLanguage":22,"type":302},"plugins/frontend-design","Frontend design skill for UI/UX implementation","frontend-design",{"claudeCode":446},"plugin manifest at plugins/frontend-design/.claude-plugin/plugin.json",[450,451,452],{"path":370,"priority":355},{"path":357,"priority":355},{"path":453,"priority":389},"skills/frontend-design/SKILL.md",{"basePath":301,"description":48,"displayName":50,"installMethods":455,"rationale":456,"selectedPaths":457,"source":361,"sourceLanguage":22,"type":302},{"claudeCode":50},"plugin manifest at plugins/hookify/.claude-plugin/plugin.json",[458,459,460,462,464,466,468,470,472,474,475,477,479,481],{"path":370,"priority":355},{"path":357,"priority":355},{"path":461,"priority":389},"skills/writing-rules/SKILL.md",{"path":463,"priority":360},"agents/conversation-analyzer.md",{"path":465,"priority":360},"commands/configure.md",{"path":467,"priority":360},"commands/help.md",{"path":469,"priority":360},"commands/hookify.md",{"path":471,"priority":360},"commands/list.md",{"path":473,"priority":360},"hooks/__init__.py",{"path":425,"priority":360},{"path":476,"priority":360},"hooks/posttooluse.py",{"path":478,"priority":360},"hooks/pretooluse.py",{"path":480,"priority":360},"hooks/stop.py",{"path":482,"priority":360},"hooks/userpromptsubmit.py",{"basePath":484,"description":485,"displayName":486,"installMethods":487,"rationale":488,"selectedPaths":489,"source":361,"sourceLanguage":22,"type":302},"plugins/learning-output-style","Interactive learning mode that requests meaningful code contributions at decision points (mimics the unshipped Learning output style)","learning-output-style",{"claudeCode":486},"plugin manifest at plugins/learning-output-style/.claude-plugin/plugin.json",[490,491,492],{"path":370,"priority":355},{"path":357,"priority":355},{"path":425,"priority":360},{"basePath":494,"description":495,"displayName":496,"installMethods":497,"rationale":498,"selectedPaths":499,"source":361,"sourceLanguage":22,"type":302},"plugins/plugin-dev","Comprehensive toolkit for developing Claude Code plugins. Includes 7 expert skills covering hooks, MCP integration, commands, agents, and best practices. AI-assisted plugin creation and validation.","plugin-dev",{"claudeCode":496},"inline plugin source from marketplace.json at plugins/plugin-dev",[500,501,503,505,507],{"path":357,"priority":355},{"path":502,"priority":360},"agents/agent-creator.md",{"path":504,"priority":360},"agents/plugin-validator.md",{"path":506,"priority":360},"agents/skill-reviewer.md",{"path":508,"priority":360},"commands/create-plugin.md",{"basePath":510,"description":511,"displayName":512,"installMethods":513,"rationale":514,"selectedPaths":515,"source":361,"sourceLanguage":22,"type":302},"plugins/pr-review-toolkit","Comprehensive PR review agents specializing in comments, tests, error handling, type design, code quality, and code simplification","pr-review-toolkit",{"claudeCode":512},"plugin manifest at plugins/pr-review-toolkit/.claude-plugin/plugin.json",[516,517,518,519,521,523,525,527,529],{"path":370,"priority":355},{"path":357,"priority":355},{"path":440,"priority":360},{"path":520,"priority":360},"agents/code-simplifier.md",{"path":522,"priority":360},"agents/comment-analyzer.md",{"path":524,"priority":360},"agents/pr-test-analyzer.md",{"path":526,"priority":360},"agents/silent-failure-hunter.md",{"path":528,"priority":360},"agents/type-design-analyzer.md",{"path":530,"priority":360},"commands/review-pr.md",{"basePath":532,"description":533,"displayName":534,"installMethods":535,"rationale":536,"selectedPaths":537,"source":361,"sourceLanguage":22,"type":302},"plugins/ralph-wiggum","Implementation of the Ralph Wiggum technique - continuous self-referential AI loops for interactive iterative development. Run Claude in a while-true loop with the same prompt until task completion.","ralph-wiggum",{"claudeCode":534},"plugin manifest at plugins/ralph-wiggum/.claude-plugin/plugin.json",[538,539,540,542,543,545,546],{"path":370,"priority":355},{"path":357,"priority":355},{"path":541,"priority":360},"commands/cancel-ralph.md",{"path":467,"priority":360},{"path":544,"priority":360},"commands/ralph-loop.md",{"path":425,"priority":360},{"path":547,"priority":360},"hooks/stop-hook.sh",{"basePath":549,"description":550,"displayName":551,"installMethods":552,"rationale":553,"selectedPaths":554,"source":361,"sourceLanguage":22,"type":302},"plugins/security-guidance","Security reminder hook that warns about potential security issues when editing files, including command injection, XSS, and unsafe code patterns","security-guidance",{"claudeCode":551},"plugin manifest at plugins/security-guidance/.claude-plugin/plugin.json",[555,556,557],{"path":370,"priority":355},{"path":425,"priority":360},{"path":558,"priority":360},"hooks/security_reminder_hook.py",{"basePath":560,"description":561,"displayName":381,"installMethods":562,"rationale":563,"selectedPaths":564,"source":361,"sourceLanguage":22,"type":24},"plugins/claude-opus-4-5-migration/skills/claude-opus-4-5-migration","Migrate prompts and code from Claude Sonnet 4.0, Sonnet 4.5, or Opus 4.1 to Opus 4.5. Use when the user wants to update their codebase, prompts, or API calls to use Opus 4.5. Handles model string updates and prompt adjustments for known Opus 4.5 behavioral differences. Does NOT migrate Haiku 4.5.",{"claudeCode":15},"SKILL.md frontmatter at plugins/claude-opus-4-5-migration/skills/claude-opus-4-5-migration/SKILL.md",[565,567,569],{"path":566,"priority":355},"SKILL.md",{"path":568,"priority":389},"references/effort.md",{"path":570,"priority":389},"references/prompt-snippets.md",{"basePath":572,"description":573,"displayName":446,"installMethods":574,"rationale":575,"selectedPaths":576,"source":361,"sourceLanguage":22,"type":24},"plugins/frontend-design/skills/frontend-design","Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.",{"claudeCode":15},"SKILL.md frontmatter at plugins/frontend-design/skills/frontend-design/SKILL.md",[577],{"path":566,"priority":355},{"basePath":19,"description":13,"displayName":23,"installMethods":579,"rationale":580,"selectedPaths":581,"source":361,"sourceLanguage":22,"type":24},{"claudeCode":15},"SKILL.md frontmatter at plugins/hookify/skills/writing-rules/SKILL.md",[582],{"path":566,"priority":355},{"basePath":584,"description":585,"displayName":586,"installMethods":587,"rationale":588,"selectedPaths":589,"source":361,"sourceLanguage":22,"type":24},"plugins/plugin-dev/skills/agent-development","This skill should be used when the user asks to \"create an agent\", \"add an agent\", \"write a subagent\", \"agent frontmatter\", \"when to use description\", \"agent examples\", \"agent tools\", \"agent colors\", \"autonomous agent\", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.","agent-development",{"claudeCode":15},"SKILL.md frontmatter at plugins/plugin-dev/skills/agent-development/SKILL.md",[590,591,594,596,598,600,602],{"path":566,"priority":355},{"path":592,"priority":593},"examples/agent-creation-prompt.md","low",{"path":595,"priority":593},"examples/complete-agent-examples.md",{"path":597,"priority":389},"references/agent-creation-system-prompt.md",{"path":599,"priority":389},"references/system-prompt-design.md",{"path":601,"priority":389},"references/triggering-examples.md",{"path":603,"priority":593},"scripts/validate-agent.sh",{"basePath":605,"description":606,"displayName":607,"installMethods":608,"rationale":609,"selectedPaths":610,"source":361,"sourceLanguage":22,"type":24},"plugins/plugin-dev/skills/command-development","This skill should be used when the user asks to \"create a slash command\", \"add a command\", \"write a custom command\", \"define command arguments\", \"use command frontmatter\", \"organize commands\", \"create command with file references\", \"interactive command\", \"use AskUserQuestion in command\", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.","command-development",{"claudeCode":15},"SKILL.md frontmatter at plugins/plugin-dev/skills/command-development/SKILL.md",[611,612,613,615,617,619,621,623,625,627,629],{"path":566,"priority":355},{"path":357,"priority":360},{"path":614,"priority":593},"examples/plugin-commands.md",{"path":616,"priority":593},"examples/simple-commands.md",{"path":618,"priority":389},"references/advanced-workflows.md",{"path":620,"priority":389},"references/documentation-patterns.md",{"path":622,"priority":389},"references/frontmatter-reference.md",{"path":624,"priority":389},"references/interactive-commands.md",{"path":626,"priority":389},"references/marketplace-considerations.md",{"path":628,"priority":389},"references/plugin-features-reference.md",{"path":630,"priority":389},"references/testing-strategies.md",{"basePath":632,"description":633,"displayName":634,"installMethods":635,"rationale":636,"selectedPaths":637,"source":361,"sourceLanguage":22,"type":24},"plugins/plugin-dev/skills/hook-development","This skill should be used when the user asks to \"create a hook\", \"add a PreToolUse/PostToolUse/Stop hook\", \"validate tool use\", \"implement prompt-based hooks\", \"use ${CLAUDE_PLUGIN_ROOT}\", \"set up event-driven automation\", \"block dangerous commands\", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.","hook-development",{"claudeCode":15},"SKILL.md frontmatter at plugins/plugin-dev/skills/hook-development/SKILL.md",[638,639,641,643,645,647,649,651,653,655,657],{"path":566,"priority":355},{"path":640,"priority":593},"examples/load-context.sh",{"path":642,"priority":593},"examples/validate-bash.sh",{"path":644,"priority":593},"examples/validate-write.sh",{"path":646,"priority":389},"references/advanced.md",{"path":648,"priority":389},"references/migration.md",{"path":650,"priority":389},"references/patterns.md",{"path":652,"priority":593},"scripts/README.md",{"path":654,"priority":593},"scripts/hook-linter.sh",{"path":656,"priority":593},"scripts/test-hook.sh",{"path":658,"priority":593},"scripts/validate-hook-schema.sh",{"basePath":660,"description":661,"displayName":662,"installMethods":663,"rationale":664,"selectedPaths":665,"source":361,"sourceLanguage":22,"type":24},"plugins/plugin-dev/skills/mcp-integration","This skill should be used when the user asks to \"add MCP server\", \"integrate MCP\", \"configure MCP in plugin\", \"use .mcp.json\", \"set up Model Context Protocol\", \"connect external service\", mentions \"${CLAUDE_PLUGIN_ROOT} with MCP\", or discusses MCP server types (SSE, stdio, HTTP, WebSocket). Provides comprehensive guidance for integrating Model Context Protocol servers into Claude Code plugins for external tool and service integration.","mcp-integration",{"claudeCode":15},"SKILL.md frontmatter at plugins/plugin-dev/skills/mcp-integration/SKILL.md",[666,667,669,671,673,675,677],{"path":566,"priority":355},{"path":668,"priority":593},"examples/http-server.json",{"path":670,"priority":593},"examples/sse-server.json",{"path":672,"priority":593},"examples/stdio-server.json",{"path":674,"priority":389},"references/authentication.md",{"path":676,"priority":389},"references/server-types.md",{"path":678,"priority":389},"references/tool-usage.md",{"basePath":680,"description":681,"displayName":682,"installMethods":683,"rationale":684,"selectedPaths":685,"source":361,"sourceLanguage":22,"type":24},"plugins/plugin-dev/skills/plugin-settings","This skill should be used when the user asks about \"plugin settings\", \"store plugin configuration\", \"user-configurable plugin\", \".local.md files\", \"plugin state files\", \"read YAML frontmatter\", \"per-project plugin settings\", or wants to make plugin behavior configurable. Documents the .claude/plugin-name.local.md pattern for storing plugin-specific configuration with YAML frontmatter and markdown content.","plugin-settings",{"claudeCode":15},"SKILL.md frontmatter at plugins/plugin-dev/skills/plugin-settings/SKILL.md",[686,687,689,691,693,695,697,699],{"path":566,"priority":355},{"path":688,"priority":593},"examples/create-settings-command.md",{"path":690,"priority":593},"examples/example-settings.md",{"path":692,"priority":593},"examples/read-settings-hook.sh",{"path":694,"priority":389},"references/parsing-techniques.md",{"path":696,"priority":389},"references/real-world-examples.md",{"path":698,"priority":593},"scripts/parse-frontmatter.sh",{"path":700,"priority":593},"scripts/validate-settings.sh",{"basePath":702,"description":703,"displayName":704,"installMethods":705,"rationale":706,"selectedPaths":707,"source":361,"sourceLanguage":22,"type":24},"plugins/plugin-dev/skills/plugin-structure","This skill should be used when the user asks to \"create a plugin\", \"scaffold a plugin\", \"understand plugin structure\", \"organize plugin components\", \"set up plugin.json\", \"use ${CLAUDE_PLUGIN_ROOT}\", \"add commands/agents/skills/hooks\", \"configure auto-discovery\", or needs guidance on plugin directory layout, manifest configuration, component organization, file naming conventions, or Claude Code plugin architecture best practices.","plugin-structure",{"claudeCode":15},"SKILL.md frontmatter at plugins/plugin-dev/skills/plugin-structure/SKILL.md",[708,709,710,712,714,716,718],{"path":566,"priority":355},{"path":357,"priority":360},{"path":711,"priority":593},"examples/advanced-plugin.md",{"path":713,"priority":593},"examples/minimal-plugin.md",{"path":715,"priority":593},"examples/standard-plugin.md",{"path":717,"priority":389},"references/component-patterns.md",{"path":719,"priority":389},"references/manifest-reference.md",{"basePath":721,"description":722,"displayName":723,"installMethods":724,"rationale":725,"selectedPaths":726,"source":361,"sourceLanguage":22,"type":24},"plugins/plugin-dev/skills/skill-development","This skill should be used when the user wants to \"create a skill\", \"add a skill to plugin\", \"write a new skill\", \"improve skill description\", \"organize skill content\", or needs guidance on skill structure, progressive disclosure, or skill development best practices for Claude Code plugins.","skill-development",{"claudeCode":15},"SKILL.md frontmatter at plugins/plugin-dev/skills/skill-development/SKILL.md",[727,728],{"path":566,"priority":355},{"path":729,"priority":389},"references/skill-creator-original.md",{"sources":731},[732],"manual",{"closedIssues90d":289,"description":734,"forks":290,"homepage":735,"openIssues90d":292,"pushedAt":293,"readmeSize":287,"stars":294,"topics":736},"Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.","https://code.claude.com/docs/en/overview",[],{"classifiedAt":738,"discoverAt":739,"extractAt":740,"githubAt":740,"updatedAt":738},1778675383497,1778675378145,1778675381570,[34,268,267,265,266],{"evaluatedAt":299,"extractAt":45,"updatedAt":299},[],[745,776,801,828,853,881],{"_creationTime":746,"_id":747,"community":748,"display":749,"identity":754,"providers":759,"relations":770,"tags":772,"workflow":773},1778692488329.011,"k17b0q52q1b77nvq2sacqreth586n5hm",{"reviewCount":11},{"description":750,"installMethods":751,"name":752,"sourceUrl":753},"Python 3.12+ with FastAPI, async/await, type hints, and Ruff linting rules for Claude Code.",{"claudeCode":752},"dotforge-stack-python-fastapi","https://github.com/luiseiman/claude-kit",{"basePath":755,"githubOwner":756,"githubRepo":757,"locale":22,"slug":758,"type":302},"stacks/python-fastapi","luiseiman","claude-kit","python-fastapi",{"evaluate":760,"extract":769},{"promptVersionExtension":27,"promptVersionScoring":28,"score":761,"tags":762,"targetMarket":35,"tier":768},100,[763,764,765,766,267,767],"python","fastapi","linting","ruff","devops","verified",{"commitSha":38},{"repoId":771},"kd79wqc8an5wh20cc2znr8tyb586mxwx",[267,767,764,765,763,766],{"evaluatedAt":774,"extractAt":775,"updatedAt":774},1778692747510,1778692488329,{"_creationTime":777,"_id":778,"community":779,"display":780,"identity":785,"providers":788,"relations":797,"tags":798,"workflow":799},1778692488329.0107,"k179bvp22xcxq4xg9bkgpkhw5s86mstq",{"reviewCount":11},{"description":781,"installMethods":782,"name":784,"sourceUrl":753},"Node.js 20+ with Express/Fastify, TypeScript, and ESM module rules for Claude Code.",{"claudeCode":783},"dotforge-stack-node-express","dotforge",{"basePath":786,"githubOwner":756,"githubRepo":757,"locale":22,"slug":787,"type":302},"stacks/node-express","node-express",{"evaluate":789,"extract":796},{"promptVersionExtension":27,"promptVersionScoring":28,"score":761,"tags":790,"targetMarket":35,"tier":768},[267,791,792,793,794,795],"management","policy","auditing","bash","claudecode",{"commitSha":38,"license":339},{"repoId":771},[793,794,795,267,791,792],{"evaluatedAt":800,"extractAt":775,"updatedAt":800},1778692726682,{"_creationTime":802,"_id":803,"community":804,"display":805,"identity":810,"providers":814,"relations":821,"tags":824,"workflow":825},1778699018122.7852,"k17ctxt5vn6b49n72hqfjs9tes86mrfw",{"reviewCount":11},{"description":806,"installMethods":807,"name":808,"sourceUrl":809},"Require a human approval signal before an AI agent can post PR reviews, comments, merges, or writes to CI config. Cedar-gated, receipt-signed, designed for the Hermes-style failure mode where a review bot posts without oversight.",{"claudeCode":808},"review-agent-governance","https://github.com/wshobson/agents",{"basePath":811,"githubOwner":812,"githubRepo":813,"locale":22,"slug":808,"type":302},"plugins/review-agent-governance","wshobson","agents",{"evaluate":815,"extract":819},{"promptVersionExtension":27,"promptVersionScoring":28,"score":816,"tags":817,"targetMarket":35,"tier":768},99,[818,266,792,323,268,793],"governance",{"commitSha":38,"license":339,"plugin":820},{"mcpCount":11,"provider":330,"skillCount":341},{"parentExtensionId":822,"repoId":823},"k17cywe30jfsfw3cdpncjfn8y186nvyw","kd74de64zj0axtg5b8t7eqqe2x86nske",[793,323,268,818,792,266],{"evaluatedAt":826,"extractAt":827,"updatedAt":826},1778700330078,1778699018122,{"_creationTime":829,"_id":830,"community":831,"display":832,"identity":836,"providers":838,"relations":849,"tags":850,"workflow":851},1778699018122.7798,"k172w4j8rxzh1f0hc5qhwye5xx86msks",{"reviewCount":11},{"description":833,"installMethods":834,"name":835,"sourceUrl":809},"WCAG accessibility auditing, compliance validation, UI testing for screen readers, keyboard navigation, and inclusive design",{"claudeCode":835},"accessibility-compliance",{"basePath":837,"githubOwner":812,"githubRepo":813,"locale":22,"slug":835,"type":302},"plugins/accessibility-compliance",{"evaluate":839,"extract":846},{"promptVersionExtension":27,"promptVersionScoring":28,"score":816,"tags":840,"targetMarket":35,"tier":768},[841,842,843,268,844,845],"accessibility","wcag","testing","inclusive-design","ui",{"commitSha":38,"license":339,"plugin":847},{"mcpCount":11,"provider":330,"skillCount":848},2,{"parentExtensionId":822,"repoId":823},[841,268,844,843,845,842],{"evaluatedAt":852,"extractAt":827,"updatedAt":852},1778699966767,{"_creationTime":854,"_id":855,"community":856,"display":857,"identity":862,"providers":865,"relations":873,"tags":876,"workflow":877},1778699561018.2627,"k177w5f5enhqf0x11zk35hg3fx86nyjq",{"reviewCount":11},{"description":858,"installMethods":859,"name":860,"sourceUrl":861},"734 Sicherheits-Hooks für Claude Code – verhindert Dateilöschung, Datenlecks, Git-Katastrophen und Token-Verschwendung während autonomer KI-Codierungssitzungen",{"claudeCode":860},"cc-safe-setup","https://github.com/yurukusa/cc-safe-setup",{"basePath":312,"githubOwner":863,"githubRepo":860,"locale":864,"slug":860,"type":302},"yurukusa","de",{"evaluate":866,"extract":871},{"promptVersionExtension":27,"promptVersionScoring":28,"score":816,"tags":867,"targetMarket":35,"tier":768},[266,265,868,869,870],"safety","code-quality","cli",{"commitSha":38,"license":339,"plugin":872},{"mcpCount":11,"provider":330,"skillCount":341},{"repoId":874,"translatedFrom":875},"kd75r9w9e5zg6a7p0g22f0n1td86nsat","k178wjnjd4vs7xhw95cq04689n86nhkt",[870,869,265,868,266],{"evaluatedAt":878,"extractAt":879,"updatedAt":880},1778699475909,1778699381979,1778699561018,{"_creationTime":882,"_id":883,"community":884,"display":885,"identity":890,"providers":891,"relations":899,"tags":903,"workflow":904},1778699489077.7122,"k177egabjnptye84kxjygvd7jd86m93j",{"reviewCount":11},{"description":886,"installMethods":887,"name":888,"sourceUrl":889},"Produktionssicherheits-Hooks für den autonomen Claude Code-Betrieb. Kontextüberwachung, Syntaxprüfung, Branch-Schutz, Aktivitätsprotokollierung und mehr.",{"claudeCode":888},"claude-code-hooks","https://github.com/yurukusa/claude-code-hooks",{"basePath":312,"githubOwner":863,"githubRepo":888,"locale":864,"slug":888,"type":302},{"evaluate":892,"extract":897},{"promptVersionExtension":27,"promptVersionScoring":28,"score":816,"tags":893,"targetMarket":35,"tier":768},[868,265,894,895,870,896,266],"autonomous","production","monitoring",{"commitSha":38,"license":339,"plugin":898},{"mcpCount":11,"provider":330,"skillCount":848},{"parentExtensionId":900,"repoId":901,"translatedFrom":902},"k179rvzf2x5tsmmwbvpyv0mgxn86mkc8","kd7eh26xf9ft5m4mhhe34kedv586nq7c","k17cm6081dkz91ebw27jqh38q586nfry",[894,870,265,896,895,868,266],{"evaluatedAt":905,"extractAt":906,"updatedAt":907},1778699440255,1778699408572,1778699489077]