[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-skill-mattpocock-obsidian-vault-zh-CN":3,"guides-for-mattpocock-obsidian-vault":555,"similar-k177py8t3j3sh4x6pq8kfzztfx86mnr0-zh-CN":556},{"_creationTime":4,"_id":5,"children":6,"community":7,"display":9,"evaluation":15,"identity":240,"isFallback":245,"parentExtension":246,"providers":247,"relations":252,"repo":254,"tags":552,"workflow":553},1778692846401.1526,"k177py8t3j3sh4x6pq8kfzztfx86mnr0",[],{"reviewCount":8},0,{"description":10,"installMethods":11,"name":13,"sourceUrl":14},"Search, create, and manage notes in the Obsidian vault with wikilinks and index notes. Use when user wants to find, create, or organize notes in Obsidian.",{"claudeCode":12},"mattpocock/skills","obsidian-vault","https://github.com/mattpocock/skills",{"_creationTime":16,"_id":17,"extensionId":5,"locale":18,"result":19,"trustSignals":222,"workflow":238},1778693438762.9302,"kn764qc0znd6ksjk5vbzaebfkh86m6rc","en",{"checks":20,"evaluatedAt":193,"extensionSummary":194,"features":195,"nonGoals":200,"promptVersionExtension":204,"promptVersionScoring":205,"purpose":206,"rationale":207,"score":208,"summary":209,"tags":210,"targetMarket":216,"tier":217,"useCases":218},[21,26,29,32,36,39,43,48,51,54,58,62,66,70,73,76,79,82,85,88,92,96,100,104,108,111,114,117,121,124,127,130,133,136,139,143,147,151,154,158,161,164,167,170,174,177,180,183,186,190],{"category":22,"check":23,"severity":24,"summary":25},"Practical Utility","Problem relevance","pass","The description clearly states that the skill can search, create, and manage notes in an Obsidian vault, addressing the user problem of finding, creating, or organizing notes.",{"category":22,"check":27,"severity":24,"summary":28},"Unique selling proposition","The skill provides specific workflows for Obsidian notes, including wikilinks and index notes, which goes beyond basic LLM capabilities for note management.",{"category":22,"check":30,"severity":24,"summary":31},"Production readiness","The skill provides concrete commands and a specified vault location, suggesting it is ready for use in managing Obsidian notes.",{"category":33,"check":34,"severity":24,"summary":35},"Scope","Single responsibility principle","The skill focuses solely on managing notes within an Obsidian vault, adhering to a single domain.",{"category":33,"check":37,"severity":24,"summary":38},"Description quality","The description accurately and concisely reflects the skill's functionality of managing Obsidian notes.",{"category":40,"check":41,"severity":24,"summary":42},"Invocation","Scoped tools","The skill uses scoped tools like `find` and `grep` which are specific to file searching and content matching within the defined vault path.",{"category":44,"check":45,"severity":46,"summary":47},"Documentation","Configuration & parameter reference","info","While the vault location is specified, there is no explicit mention of default parameters or precedence order for configuration, though it's a simple script-based skill.",{"category":33,"check":49,"severity":24,"summary":50},"Tool naming","The tools used (find, grep) are standard system commands and their names are descriptive within the context of file operations.",{"category":33,"check":52,"severity":24,"summary":53},"Minimal I/O surface","The tools used are standard system commands with well-defined inputs and outputs, minimizing unnecessary data exchange.",{"category":55,"check":56,"severity":24,"summary":57},"License","License usability","The extension is licensed under the MIT license, which is a permissive open-source license.",{"category":59,"check":60,"severity":24,"summary":61},"Maintenance","Commit recency","The repository shows recent commits, indicating active maintenance.",{"category":59,"check":63,"severity":64,"summary":65},"Dependency Management","not_applicable","The skill does not appear to use any third-party dependencies.",{"category":67,"check":68,"severity":64,"summary":69},"Security","Secret Management","The skill does not handle any secrets.",{"category":67,"check":71,"severity":24,"summary":72},"Injection","The skill uses standard `find` and `grep` commands with explicit paths, mitigating injection risks.",{"category":67,"check":74,"severity":24,"summary":75},"Transitive Supply-Chain Grenades","The skill relies on bundled system commands and a fixed vault path, avoiding runtime downloads or remote execution.",{"category":67,"check":77,"severity":24,"summary":78},"Sandbox Isolation","The skill operates within a specified vault directory and uses standard, non-destructive commands, respecting sandbox boundaries.",{"category":67,"check":80,"severity":24,"summary":81},"Sandbox escape primitives","No detached process spawns or denial-retry loops were found in the scripts.",{"category":67,"check":83,"severity":24,"summary":84},"Data Exfiltration","The skill only interacts with local files and does not make any outbound calls, thus preventing data exfiltration.",{"category":67,"check":86,"severity":24,"summary":87},"Hidden Text Tricks","The bundled content is free of hidden-steering tricks and uses clean printable ASCII.",{"category":89,"check":90,"severity":24,"summary":91},"Hooks","Opaque code execution","The scripts use standard, readable shell commands and do not involve obfuscation techniques.",{"category":93,"check":94,"severity":24,"summary":95},"Portability","Structural Assumption","The skill explicitly states the vault location, allowing users to configure it, rather than assuming a default structure.",{"category":97,"check":98,"severity":24,"summary":99},"Trust","Issues Attention","The repository has a high number of closed issues relative to open ones, suggesting active maintainer engagement.",{"category":101,"check":102,"severity":24,"summary":103},"Versioning","Release Management","The repository has a meaningful version number declared in the frontmatter of SKILL.md.",{"category":105,"check":106,"severity":24,"summary":107},"Code Execution","Validation","The skill uses standard command-line tools (`find`, `grep`) which handle their own input validation for paths and patterns.",{"category":67,"check":109,"severity":24,"summary":110},"Unguarded Destructive Operations","The skill primarily uses read-only operations like `find` and `grep`, and no destructive operations are present.",{"category":105,"check":112,"severity":24,"summary":113},"Error Handling","The skill relies on the error handling of standard shell commands like `find` and `grep`, which provide meaningful error messages.",{"category":105,"check":115,"severity":64,"summary":116},"Logging","The skill does not perform destructive actions or outbound calls, so explicit local audit logging is not required.",{"category":118,"check":119,"severity":64,"summary":120},"Compliance","GDPR","The skill operates only on local files specified by the user and does not process personal data.",{"category":118,"check":122,"severity":24,"summary":123},"Target market","The skill operates on local files and has no regional dependencies, making it globally applicable.",{"category":93,"check":125,"severity":24,"summary":126},"Runtime stability","The skill uses standard POSIX shell commands (`find`, `grep`) which are broadly compatible across Unix-like systems.",{"category":44,"check":128,"severity":24,"summary":129},"README","The README file is comprehensive, explaining the purpose and philosophy behind the skills, and providing installation instructions.",{"category":33,"check":131,"severity":64,"summary":132},"Tool surface size","This skill uses standard system commands via direct execution and does not expose distinct tools in the manifest.",{"category":40,"check":134,"severity":64,"summary":135},"Overlapping near-synonym tools","The skill utilizes standard system commands (`find`, `grep`) that are not synonyms in this context and are used for distinct purposes.",{"category":44,"check":137,"severity":24,"summary":138},"Phantom features","All advertised functionalities for managing Obsidian notes are implemented via the provided shell commands.",{"category":140,"check":141,"severity":24,"summary":142},"Install","Installation instruction","The README provides clear installation instructions using `npx skills@latest add` and demonstrates usage with a `/setup-matt-pocock-skills` command.",{"category":144,"check":145,"severity":24,"summary":146},"Errors","Actionable error messages","The skill relies on standard shell command error messages, which are typically actionable and informative.",{"category":148,"check":149,"severity":64,"summary":150},"Execution","Pinned dependencies","The skill does not use third-party dependencies; it relies on system commands.",{"category":33,"check":152,"severity":64,"summary":153},"Dry-run preview","The skill performs read-only operations (searching files) and does not have state-changing actions requiring a dry-run preview.",{"category":155,"check":156,"severity":64,"summary":157},"Protocol","Idempotent retry & timeouts","The skill operates on local files with standard shell commands and does not involve remote calls or state-changing operations requiring idempotency.",{"category":118,"check":159,"severity":64,"summary":160},"Telemetry opt-in","The skill does not emit any telemetry.",{"category":40,"check":162,"severity":24,"summary":163},"Precise Purpose","The skill clearly states it searches, creates, and manages Obsidian notes with wikilinks and index notes, and specifies usage context.",{"category":40,"check":165,"severity":24,"summary":166},"Concise Frontmatter","The frontmatter is concise, clearly stating the core capability and usage context within the character limit.",{"category":44,"check":168,"severity":24,"summary":169},"Concise Body","The SKILL.md is short and effectively delegates detailed explanations to the README.",{"category":171,"check":172,"severity":24,"summary":173},"Context","Progressive Disclosure","The SKILL.md is concise, and the README provides further detail and organization, demonstrating progressive disclosure.",{"category":171,"check":175,"severity":64,"summary":176},"Forked exploration","The skill's workflow is not one of deep exploration; it involves direct file operations.",{"category":22,"check":178,"severity":24,"summary":179},"Usage examples","The SKILL.md provides concrete bash examples for searching and finding related notes, demonstrating observable outcomes.",{"category":22,"check":181,"severity":46,"summary":182},"Edge cases","While the skill uses standard commands, explicit documentation of failure modes (e.g., malformed search query, non-existent vault path) and recovery steps is missing.",{"category":93,"check":184,"severity":64,"summary":185},"Tool Fallback","The skill uses standard system commands and does not rely on external MCP servers or tools that would require a fallback.",{"category":187,"check":188,"severity":24,"summary":189},"Safety","Halt on unexpected state","The skill leverages standard shell commands which will naturally halt on unexpected states like a missing vault path or invalid search criteria.",{"category":93,"check":191,"severity":24,"summary":192},"Cross-skill coupling","The skill operates independently on the local file system and does not implicitly rely on other skills.",1778693438561,"This skill allows users to search, create, and manage notes within a specified Obsidian vault using standard shell commands and conventions like wikilinks and index notes.",[196,197,198,199],"Search notes by filename or content","Create new notes with specified naming conventions","Find related notes using wikilink backlinks","Locate index notes for aggregated topics",[201,202,203],"Managing Obsidian vault settings or themes.","Synchronizing vaults across devices.","Directly editing note content beyond creation and basic management.","3.0.0","4.4.0","To efficiently search, create, and organize notes within an Obsidian vault, leveraging wikilinks and index notes for structure.","The skill is well-documented, secure, and focused. A minor info finding regarding explicit edge case documentation was noted, but does not detract from its overall quality.",96,"A high-quality skill for managing Obsidian notes locally.",[211,212,213,214,215],"notes","obsidian","file-management","search","wikilinks","global","verified",[219,220,221],"Use when you need to quickly find existing notes in your Obsidian vault.","Use when you want to create a new note following specific naming and linking conventions.","Use when organizing your knowledge base through index notes and wikilinks.",{"codeQuality":223,"collectedAt":225,"documentation":226,"maintenance":229,"security":235,"testCoverage":237},{"hasLockfile":224},false,1778693423114,{"descriptionLength":227,"readmeSize":228},154,11516,{"closedIssues90d":230,"forks":231,"hasChangelog":224,"openIssues90d":232,"pushedAt":233,"stars":234},117,6767,27,1778677522000,78489,{"hasNpmPackage":224,"license":236,"smitheryVerified":224},"MIT",{"hasCi":224,"hasTests":224},{"updatedAt":239},1778693438763,{"basePath":241,"githubOwner":242,"githubRepo":243,"locale":18,"slug":13,"type":244},"skills/personal/obsidian-vault","mattpocock","skills","skill",true,null,{"evaluate":248,"extract":250},{"promptVersionExtension":204,"promptVersionScoring":205,"score":208,"tags":249,"targetMarket":216,"tier":217},[211,212,213,214,215],{"commitSha":251},"HEAD",{"repoId":253},"kd70nm2vazehgqc4j28ve6cwv986mv1s",{"_creationTime":255,"_id":253,"identity":256,"providers":257,"workflow":548},1778692842371.0967,{"githubOwner":242,"githubRepo":243,"sourceUrl":14},{"classify":258,"discover":542,"github":545},{"commitSha":251,"extensions":259},[260,276,285,293,301,309,320,333,347,359,377,395,403,411,423,431,439,447,455,463,473,481,489,497,505,510,518,526,534],{"basePath":261,"displayName":262,"installMethods":263,"rationale":264,"selectedPaths":265,"source":274,"sourceLanguage":18,"type":275},"","mattpocock-skills",{"claudeCode":262},"plugin manifest at .claude-plugin/plugin.json",[266,269,271],{"path":267,"priority":268},".claude-plugin/plugin.json","mandatory",{"path":270,"priority":268},"README.md",{"path":272,"priority":273},"LICENSE","high","rule","plugin",{"basePath":277,"description":278,"displayName":279,"installMethods":280,"rationale":281,"selectedPaths":282,"source":274,"sourceLanguage":18,"type":244},"skills/deprecated/design-an-interface","Generate multiple radically different interface designs for a module using parallel sub-agents. Use when user wants to design an API, explore interface options, compare module shapes, or mentions \"design it twice\".","design-an-interface",{"claudeCode":12},"SKILL.md frontmatter at skills/deprecated/design-an-interface/SKILL.md",[283],{"path":284,"priority":268},"SKILL.md",{"basePath":286,"description":287,"displayName":288,"installMethods":289,"rationale":290,"selectedPaths":291,"source":274,"sourceLanguage":18,"type":244},"skills/deprecated/qa","Interactive QA session where user reports bugs or issues conversationally, and the agent files GitHub issues. Explores the codebase in the background for context and domain language. Use when user wants to report bugs, do QA, file issues conversationally, or mentions \"QA session\".","qa",{"claudeCode":12},"SKILL.md frontmatter at skills/deprecated/qa/SKILL.md",[292],{"path":284,"priority":268},{"basePath":294,"description":295,"displayName":296,"installMethods":297,"rationale":298,"selectedPaths":299,"source":274,"sourceLanguage":18,"type":244},"skills/deprecated/request-refactor-plan","Create a detailed refactor plan with tiny commits via user interview, then file it as a GitHub issue. Use when user wants to plan a refactor, create a refactoring RFC, or break a refactor into safe incremental steps.","request-refactor-plan",{"claudeCode":12},"SKILL.md frontmatter at skills/deprecated/request-refactor-plan/SKILL.md",[300],{"path":284,"priority":268},{"basePath":302,"description":303,"displayName":304,"installMethods":305,"rationale":306,"selectedPaths":307,"source":274,"sourceLanguage":18,"type":244},"skills/deprecated/ubiquitous-language","Extract a DDD-style ubiquitous language glossary from the current conversation, flagging ambiguities and proposing canonical terms. Saves to UBIQUITOUS_LANGUAGE.md. Use when user wants to define domain terms, build a glossary, harden terminology, create a ubiquitous language, or mentions \"domain model\" or \"DDD\".","ubiquitous-language",{"claudeCode":12},"SKILL.md frontmatter at skills/deprecated/ubiquitous-language/SKILL.md",[308],{"path":284,"priority":268},{"basePath":310,"description":311,"displayName":312,"installMethods":313,"rationale":314,"selectedPaths":315,"source":274,"sourceLanguage":18,"type":244},"skills/engineering/diagnose","Disciplined diagnosis loop for hard bugs and performance regressions. Reproduce → minimise → hypothesise → instrument → fix → regression-test. Use when user says \"diagnose this\" / \"debug this\", reports a bug, says something is broken/throwing/failing, or describes a performance regression.","diagnose",{"claudeCode":12},"SKILL.md frontmatter at skills/engineering/diagnose/SKILL.md",[316,317],{"path":284,"priority":268},{"path":318,"priority":319},"scripts/hitl-loop.template.sh","low",{"basePath":321,"description":322,"displayName":323,"installMethods":324,"rationale":325,"selectedPaths":326,"source":274,"sourceLanguage":18,"type":244},"skills/engineering/grill-with-docs","Grilling session that challenges your plan against the existing domain model, sharpens terminology, and updates documentation (CONTEXT.md, ADRs) inline as decisions crystallise. Use when user wants to stress-test a plan against their project's language and documented decisions.","grill-with-docs",{"claudeCode":12},"SKILL.md frontmatter at skills/engineering/grill-with-docs/SKILL.md",[327,328,331],{"path":284,"priority":268},{"path":329,"priority":330},"ADR-FORMAT.md","medium",{"path":332,"priority":330},"CONTEXT-FORMAT.md",{"basePath":334,"description":335,"displayName":336,"installMethods":337,"rationale":338,"selectedPaths":339,"source":274,"sourceLanguage":18,"type":244},"skills/engineering/improve-codebase-architecture","Find deepening opportunities in a codebase, informed by the domain language in CONTEXT.md and the decisions in docs/adr/. Use when the user wants to improve architecture, find refactoring opportunities, consolidate tightly-coupled modules, or make a codebase more testable and AI-navigable.","improve-codebase-architecture",{"claudeCode":12},"SKILL.md frontmatter at skills/engineering/improve-codebase-architecture/SKILL.md",[340,341,343,345],{"path":284,"priority":268},{"path":342,"priority":330},"DEEPENING.md",{"path":344,"priority":330},"INTERFACE-DESIGN.md",{"path":346,"priority":330},"LANGUAGE.md",{"basePath":348,"description":349,"displayName":350,"installMethods":351,"rationale":352,"selectedPaths":353,"source":274,"sourceLanguage":18,"type":244},"skills/engineering/prototype","Build a throwaway prototype to flesh out a design before committing to it. Routes between two branches — a runnable terminal app for state/business-logic questions, or several radically different UI variations toggleable from one route. Use when the user wants to prototype, sanity-check a data model or state machine, mock up a UI, explore design options, or says \"prototype this\", \"let me play with it\", \"try a few designs\".","prototype",{"claudeCode":12},"SKILL.md frontmatter at skills/engineering/prototype/SKILL.md",[354,355,357],{"path":284,"priority":268},{"path":356,"priority":330},"LOGIC.md",{"path":358,"priority":330},"UI.md",{"basePath":360,"description":361,"displayName":362,"installMethods":363,"rationale":364,"selectedPaths":365,"source":274,"sourceLanguage":18,"type":244},"skills/engineering/setup-matt-pocock-skills","Sets up an `## Agent skills` block in AGENTS.md/CLAUDE.md and `docs/agents/` so the engineering skills know this repo's issue tracker (GitHub or local markdown), triage label vocabulary, and domain doc layout. Run before first use of `to-issues`, `to-prd`, `triage`, `diagnose`, `tdd`, `improve-codebase-architecture`, or `zoom-out` — or if those skills appear to be missing context about the issue tracker, triage labels, or domain docs.","setup-matt-pocock-skills",{"claudeCode":12},"SKILL.md frontmatter at skills/engineering/setup-matt-pocock-skills/SKILL.md",[366,367,369,371,373,375],{"path":284,"priority":268},{"path":368,"priority":330},"domain.md",{"path":370,"priority":330},"issue-tracker-github.md",{"path":372,"priority":330},"issue-tracker-gitlab.md",{"path":374,"priority":330},"issue-tracker-local.md",{"path":376,"priority":330},"triage-labels.md",{"basePath":378,"description":379,"displayName":380,"installMethods":381,"rationale":382,"selectedPaths":383,"source":274,"sourceLanguage":18,"type":244},"skills/engineering/tdd","Test-driven development with red-green-refactor loop. Use when user wants to build features or fix bugs using TDD, mentions \"red-green-refactor\", wants integration tests, or asks for test-first development.","tdd",{"claudeCode":12},"SKILL.md frontmatter at skills/engineering/tdd/SKILL.md",[384,385,387,389,391,393],{"path":284,"priority":268},{"path":386,"priority":330},"deep-modules.md",{"path":388,"priority":330},"interface-design.md",{"path":390,"priority":330},"mocking.md",{"path":392,"priority":330},"refactoring.md",{"path":394,"priority":330},"tests.md",{"basePath":396,"description":397,"displayName":398,"installMethods":399,"rationale":400,"selectedPaths":401,"source":274,"sourceLanguage":18,"type":244},"skills/engineering/to-issues","Break a plan, spec, or PRD into independently-grabbable issues on the project issue tracker using tracer-bullet vertical slices. Use when user wants to convert a plan into issues, create implementation tickets, or break down work into issues.","to-issues",{"claudeCode":12},"SKILL.md frontmatter at skills/engineering/to-issues/SKILL.md",[402],{"path":284,"priority":268},{"basePath":404,"description":405,"displayName":406,"installMethods":407,"rationale":408,"selectedPaths":409,"source":274,"sourceLanguage":18,"type":244},"skills/engineering/to-prd","Turn the current conversation context into a PRD and publish it to the project issue tracker. Use when user wants to create a PRD from the current context.","to-prd",{"claudeCode":12},"SKILL.md frontmatter at skills/engineering/to-prd/SKILL.md",[410],{"path":284,"priority":268},{"basePath":412,"description":413,"displayName":414,"installMethods":415,"rationale":416,"selectedPaths":417,"source":274,"sourceLanguage":18,"type":244},"skills/engineering/triage","Triage issues through a state machine driven by triage roles. Use when user wants to create an issue, triage issues, review incoming bugs or feature requests, prepare issues for an AFK agent, or manage issue workflow.","triage",{"claudeCode":12},"SKILL.md frontmatter at skills/engineering/triage/SKILL.md",[418,419,421],{"path":284,"priority":268},{"path":420,"priority":330},"AGENT-BRIEF.md",{"path":422,"priority":330},"OUT-OF-SCOPE.md",{"basePath":424,"description":425,"displayName":426,"installMethods":427,"rationale":428,"selectedPaths":429,"source":274,"sourceLanguage":18,"type":244},"skills/engineering/zoom-out","Tell the agent to zoom out and give broader context or a higher-level perspective. Use when you're unfamiliar with a section of code or need to understand how it fits into the bigger picture.","zoom-out",{"claudeCode":12},"SKILL.md frontmatter at skills/engineering/zoom-out/SKILL.md",[430],{"path":284,"priority":268},{"basePath":432,"description":433,"displayName":434,"installMethods":435,"rationale":436,"selectedPaths":437,"source":274,"sourceLanguage":18,"type":244},"skills/in-progress/review","Review the changes since a fixed point (commit, branch, tag, or merge-base) along two axes — Standards (does the code follow this repo's documented coding standards?) and Spec (does the code match what the originating issue/PRD asked for?). Runs both reviews in parallel sub-agents and reports them side by side. Use when the user wants to review a branch, a PR, work-in-progress changes, or asks to \"review since X\".","review",{"claudeCode":12},"SKILL.md frontmatter at skills/in-progress/review/SKILL.md",[438],{"path":284,"priority":268},{"basePath":440,"description":441,"displayName":442,"installMethods":443,"rationale":444,"selectedPaths":445,"source":274,"sourceLanguage":18,"type":244},"skills/in-progress/writing-beats","Shape an article as a journey of beats, choose-your-own-adventure style. The user picks a starting beat from the raw material, you write only that beat, then offer options for where to pivot next, beat by beat, until the article reaches a natural end. Use when the user has raw material and wants to assemble it as a narrative rather than an argument.","writing-beats",{"claudeCode":12},"SKILL.md frontmatter at skills/in-progress/writing-beats/SKILL.md",[446],{"path":284,"priority":268},{"basePath":448,"description":449,"displayName":450,"installMethods":451,"rationale":452,"selectedPaths":453,"source":274,"sourceLanguage":18,"type":244},"skills/in-progress/writing-fragments","Grilling session that mines the user for fragments — heterogeneous nuggets of writing (claims, vignettes, sharp sentences, half-thoughts) — and appends them to a single document as raw material for a future article. Use when the user wants to develop ideas before imposing structure, or mentions \"fragments\", \"ideate\", or \"raw material\" for writing.","writing-fragments",{"claudeCode":12},"SKILL.md frontmatter at skills/in-progress/writing-fragments/SKILL.md",[454],{"path":284,"priority":268},{"basePath":456,"description":457,"displayName":458,"installMethods":459,"rationale":460,"selectedPaths":461,"source":274,"sourceLanguage":18,"type":244},"skills/in-progress/writing-shape","Take a markdown file of raw material and shape it into an article through a conversational session — drafting candidate openings, growing the piece paragraph by paragraph, arguing about format (lists, tables, callouts, quotes) at each step. Use when the user has a pile of notes, fragments, or a rough draft and wants help turning it into something publishable.","writing-shape",{"claudeCode":12},"SKILL.md frontmatter at skills/in-progress/writing-shape/SKILL.md",[462],{"path":284,"priority":268},{"basePath":464,"description":465,"displayName":466,"installMethods":467,"rationale":468,"selectedPaths":469,"source":274,"sourceLanguage":18,"type":244},"skills/misc/git-guardrails-claude-code","Set up Claude Code hooks to block dangerous git commands (push, reset --hard, clean, branch -D, etc.) before they execute. Use when user wants to prevent destructive git operations, add git safety hooks, or block git push/reset in Claude Code.","git-guardrails-claude-code",{"claudeCode":12},"SKILL.md frontmatter at skills/misc/git-guardrails-claude-code/SKILL.md",[470,471],{"path":284,"priority":268},{"path":472,"priority":319},"scripts/block-dangerous-git.sh",{"basePath":474,"description":475,"displayName":476,"installMethods":477,"rationale":478,"selectedPaths":479,"source":274,"sourceLanguage":18,"type":244},"skills/misc/migrate-to-shoehorn","Migrate test files from `as` type assertions to @total-typescript/shoehorn. Use when user mentions shoehorn, wants to replace `as` in tests, or needs partial test data.","migrate-to-shoehorn",{"claudeCode":12},"SKILL.md frontmatter at skills/misc/migrate-to-shoehorn/SKILL.md",[480],{"path":284,"priority":268},{"basePath":482,"description":483,"displayName":484,"installMethods":485,"rationale":486,"selectedPaths":487,"source":274,"sourceLanguage":18,"type":244},"skills/misc/scaffold-exercises","Create exercise directory structures with sections, problems, solutions, and explainers that pass linting. Use when user wants to scaffold exercises, create exercise stubs, or set up a new course section.","scaffold-exercises",{"claudeCode":12},"SKILL.md frontmatter at skills/misc/scaffold-exercises/SKILL.md",[488],{"path":284,"priority":268},{"basePath":490,"description":491,"displayName":492,"installMethods":493,"rationale":494,"selectedPaths":495,"source":274,"sourceLanguage":18,"type":244},"skills/misc/setup-pre-commit","Set up Husky pre-commit hooks with lint-staged (Prettier), type checking, and tests in the current repo. Use when user wants to add pre-commit hooks, set up Husky, configure lint-staged, or add commit-time formatting/typechecking/testing.","setup-pre-commit",{"claudeCode":12},"SKILL.md frontmatter at skills/misc/setup-pre-commit/SKILL.md",[496],{"path":284,"priority":268},{"basePath":498,"description":499,"displayName":500,"installMethods":501,"rationale":502,"selectedPaths":503,"source":274,"sourceLanguage":18,"type":244},"skills/personal/edit-article","Edit and improve articles by restructuring sections, improving clarity, and tightening prose. Use when user wants to edit, revise, or improve an article draft.","edit-article",{"claudeCode":12},"SKILL.md frontmatter at skills/personal/edit-article/SKILL.md",[504],{"path":284,"priority":268},{"basePath":241,"description":10,"displayName":13,"installMethods":506,"rationale":507,"selectedPaths":508,"source":274,"sourceLanguage":18,"type":244},{"claudeCode":12},"SKILL.md frontmatter at skills/personal/obsidian-vault/SKILL.md",[509],{"path":284,"priority":268},{"basePath":511,"description":512,"displayName":513,"installMethods":514,"rationale":515,"selectedPaths":516,"source":274,"sourceLanguage":18,"type":244},"skills/productivity/caveman","Ultra-compressed communication mode. Cuts token usage ~75% by dropping filler, articles, and pleasantries while keeping full technical accuracy. Use when user says \"caveman mode\", \"talk like caveman\", \"use caveman\", \"less tokens\", \"be brief\", or invokes /caveman.\n","caveman",{"claudeCode":12},"SKILL.md frontmatter at skills/productivity/caveman/SKILL.md",[517],{"path":284,"priority":268},{"basePath":519,"description":520,"displayName":521,"installMethods":522,"rationale":523,"selectedPaths":524,"source":274,"sourceLanguage":18,"type":244},"skills/productivity/grill-me","Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. Use when user wants to stress-test a plan, get grilled on their design, or mentions \"grill me\".","grill-me",{"claudeCode":12},"SKILL.md frontmatter at skills/productivity/grill-me/SKILL.md",[525],{"path":284,"priority":268},{"basePath":527,"description":528,"displayName":529,"installMethods":530,"rationale":531,"selectedPaths":532,"source":274,"sourceLanguage":18,"type":244},"skills/productivity/handoff","Compact the current conversation into a handoff document for another agent to pick up.","handoff",{"claudeCode":12},"SKILL.md frontmatter at skills/productivity/handoff/SKILL.md",[533],{"path":284,"priority":268},{"basePath":535,"description":536,"displayName":537,"installMethods":538,"rationale":539,"selectedPaths":540,"source":274,"sourceLanguage":18,"type":244},"skills/productivity/write-a-skill","Create new agent skills with proper structure, progressive disclosure, and bundled resources. Use when user wants to create, write, or build a new skill.","write-a-skill",{"claudeCode":12},"SKILL.md frontmatter at skills/productivity/write-a-skill/SKILL.md",[541],{"path":284,"priority":268},{"sources":543},[544],"manual",{"closedIssues90d":230,"description":546,"forks":231,"license":236,"openIssues90d":232,"pushedAt":233,"readmeSize":228,"stars":234,"topics":547},"Skills for Real Engineers. Straight from my .claude directory.",[],{"classifiedAt":549,"discoverAt":550,"extractAt":551,"githubAt":551,"updatedAt":549},1778692846116,1778692842371,1778692844195,[213,211,212,214,215],{"evaluatedAt":239,"extractAt":554,"updatedAt":239},1778692846401,[],[557,584,611,638,667,698],{"_creationTime":558,"_id":559,"community":560,"display":561,"identity":567,"providers":570,"relations":578,"tags":580,"workflow":581},1778683308558.516,"k17czwdxg4m7aj37zwt9n7e0ys86m2h3",{"reviewCount":8},{"description":562,"installMethods":563,"name":565,"sourceUrl":566},"Audit your Obsidian vault in Claude Code — finds stale drafts, empty folders, duplicate filenames, and incomplete files. Saves a dated report.",{"claudeCode":564},"BrianRWagner/ai-marketing-claude-code-skills","vault-cleanup-auditor","https://github.com/BrianRWagner/ai-marketing-claude-code-skills",{"basePath":565,"githubOwner":568,"githubRepo":569,"locale":18,"slug":565,"type":244},"BrianRWagner","ai-marketing-claude-code-skills",{"evaluate":571,"extract":577},{"promptVersionExtension":204,"promptVersionScoring":205,"score":572,"tags":573,"targetMarket":216,"tier":217},98,[212,574,575,576,213],"vault-management","bash","auditing",{"commitSha":251},{"repoId":579},"kd79t0s02gyz4fb3m5zvb5ec4x86n8tb",[576,575,213,212,574],{"evaluatedAt":582,"extractAt":583,"updatedAt":582},1778683809959,1778683308558,{"_creationTime":585,"_id":586,"community":587,"display":588,"identity":593,"providers":597,"relations":605,"tags":607,"workflow":608},1778697652123.8955,"k172pxq3fnvt4a5wb6ag0mxgf586m250",{"reviewCount":8},{"description":589,"installMethods":590,"name":212,"sourceUrl":592},"Work with Obsidian vaults (plain Markdown notes) and automate via obsidian-cli.",{"claudeCode":591},"steipete/clawdis","https://github.com/steipete/clawdis",{"basePath":594,"githubOwner":595,"githubRepo":596,"locale":18,"slug":212,"type":244},"skills/obsidian","steipete","clawdis",{"evaluate":598,"extract":604},{"promptVersionExtension":204,"promptVersionScoring":205,"score":599,"tags":600,"targetMarket":216,"tier":217},97,[212,211,601,602,603],"markdown","cli","automation",{"commitSha":251},{"repoId":606},"kd738npxg9yh3xf3vddzy9fyfh86nhng",[603,602,601,211,212],{"evaluatedAt":609,"extractAt":610,"updatedAt":609},1778698766825,1778697652123,{"_creationTime":612,"_id":613,"community":614,"display":615,"identity":621,"providers":625,"relations":632,"tags":634,"workflow":635},1778688417731.955,"k17519qw60syescz558gc23s8h86m99f",{"reviewCount":8},{"description":616,"installMethods":617,"name":619,"sourceUrl":620},"Command-line interface for Obsidian — Knowledge management and note-taking via Obsidian Local REST API. Designed for AI agents and power users who need to manage notes, search the vault, and execute commands without the GUI.",{"claudeCode":618},"hkuds/cli-anything","cli-anything-obsidian","https://github.com/hkuds/cli-anything",{"basePath":622,"githubOwner":623,"githubRepo":624,"locale":18,"slug":619,"type":244},"skills/cli-anything-obsidian","hkuds","cli-anything",{"evaluate":626,"extract":631},{"promptVersionExtension":204,"promptVersionScoring":205,"score":627,"tags":628,"targetMarket":216,"tier":217},95,[212,629,630,602,211],"knowledge-management","rest-api",{"commitSha":251},{"repoId":633},"kd7e2bra4ymb6r521a25r6yges86n35p",[602,629,211,212,630],{"evaluatedAt":636,"extractAt":637,"updatedAt":636},1778689420999,1778688417732,{"_creationTime":639,"_id":640,"community":641,"display":642,"identity":648,"providers":652,"relations":661,"tags":663,"workflow":664},1778686012417.8306,"k174h7a286wwq983v6g606d1j986mpcn",{"reviewCount":8},{"description":643,"installMethods":644,"name":646,"sourceUrl":647},"Obsidian vault as persistent memory — daily notes, session logs, knowledge capture, and search across your entire vault.",{"claudeCode":645},"daxaur/openpaw","c-obsidian","https://github.com/daxaur/openpaw",{"basePath":649,"githubOwner":650,"githubRepo":651,"locale":18,"slug":646,"type":244},"skills/c-obsidian","daxaur","openpaw",{"evaluate":653,"extract":660},{"promptVersionExtension":204,"promptVersionScoring":205,"score":654,"tags":655,"targetMarket":216,"tier":659},76,[212,211,656,657,658,602],"knowledge-base","memory","daily-notes","flagged",{"commitSha":251,"license":236},{"repoId":662},"kd7bwdbyne8rrdfxt9ahxb6ved86mk9b",[602,658,656,657,211,212],{"evaluatedAt":665,"extractAt":666,"updatedAt":665},1778686650587,1778686012417,{"_creationTime":668,"_id":669,"community":670,"display":671,"identity":677,"providers":682,"relations":691,"tags":694,"workflow":695},1778696833339.6228,"k177df8tbts95fw6vhzr8tm4hd86mb4b",{"reviewCount":8},{"description":672,"installMethods":673,"name":675,"sourceUrl":676},"Interact with Google Drive - search files, find folders, list contents, download files, upload files,\ncreate folders, move, copy, rename, and trash files. Use when user asks to: search Google Drive,\nfind a file/folder, list Drive contents, download or upload files, create folders, move files,\nor organize Drive content. Lightweight integration with standalone OAuth authentication supporting\nfull read/write access.\n",{"claudeCode":674},"sanjay3290/ai-skills","Google Drive Skill","https://github.com/sanjay3290/ai-skills",{"basePath":678,"githubOwner":679,"githubRepo":680,"locale":18,"slug":681,"type":244},"skills/google-drive","sanjay3290","ai-skills","google-drive",{"evaluate":683,"extract":689},{"promptVersionExtension":204,"promptVersionScoring":205,"score":684,"tags":685,"targetMarket":216,"tier":217},100,[681,213,686,687,688],"api-integration","oauth","python",{"commitSha":251,"license":690},"Apache-2.0",{"parentExtensionId":692,"repoId":693},"k17es37z10n1sw6t2m3f0vsydx86mnje","kd71np0fyqg23qg8w2hcfw0h0h86nkn0",[686,213,681,687,688],{"evaluatedAt":696,"extractAt":697,"updatedAt":696},1778697011084,1778696833339,{"_creationTime":699,"_id":700,"community":701,"display":702,"identity":708,"providers":712,"relations":718,"tags":721,"workflow":722},1778683100520.3,"k170tessb6tr9sjb6mk8qqw6qn86nv1n",{"reviewCount":8},{"description":703,"installMethods":704,"name":706,"sourceUrl":707},"Moves track markdown files to the correct album location. Use when the user has track files in Downloads or other locations that need to be placed in an album.",{"claudeCode":705},"bitwize-music-studio/claude-ai-music-skills","import-track","https://github.com/bitwize-music-studio/claude-ai-music-skills",{"basePath":709,"githubOwner":710,"githubRepo":711,"locale":18,"slug":706,"type":244},"skills/import-track","bitwize-music-studio","claude-ai-music-skills",{"evaluate":713,"extract":717},{"promptVersionExtension":204,"promptVersionScoring":205,"score":684,"tags":714,"targetMarket":216,"tier":217},[715,213,603,716],"music","mcp",{"commitSha":251},{"parentExtensionId":719,"repoId":720},"k1754vkdjckrkqvz9x7tjrvhzn86n1gc","kd70cgrajsrnk5gmq60rhq30zd86nyc0",[603,213,716,715],{"evaluatedAt":723,"extractAt":724,"updatedAt":723},1778683452533,1778683100520]