[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"extension-skill-mattpocock-writing-beats-en":3,"guides-for-mattpocock-writing-beats":566,"similar-k170aqk414yttkhn6rsqnmnsr986m38g-en":567},{"_creationTime":4,"_id":5,"children":6,"community":7,"display":9,"evaluation":15,"identity":252,"isFallback":236,"parentExtension":257,"providers":258,"relations":263,"repo":265,"tags":563,"workflow":564},1778692846401.1506,"k170aqk414yttkhn6rsqnmnsr986m38g",[],{"reviewCount":8},0,{"description":10,"installMethods":11,"name":13,"sourceUrl":14},"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.",{"claudeCode":12},"mattpocock/skills","writing-beats","https://github.com/mattpocock/skills",{"_creationTime":16,"_id":17,"extensionId":5,"locale":18,"result":19,"trustSignals":234,"workflow":250},1778693245041.9114,"kn7a25dpn4wdt29j2amseq5zhh86m0vp","en",{"checks":20,"evaluatedAt":194,"extensionSummary":195,"features":196,"nonGoals":202,"practices":206,"prerequisites":207,"promptVersionExtension":208,"promptVersionScoring":209,"purpose":210,"rationale":211,"score":212,"summary":213,"tags":214,"targetMarket":220,"tier":221,"useCases":222,"workflow":227},[21,26,29,32,36,39,44,48,51,54,58,62,65,69,72,75,78,81,84,87,91,95,100,104,108,111,114,117,121,124,127,130,133,136,139,143,147,151,154,158,161,164,167,170,174,177,181,184,187,191],{"category":22,"check":23,"severity":24,"summary":25},"Practical Utility","Problem relevance","pass","The description clearly states the problem of shaping an article as a narrative journey of beats using raw material, and the use case is when the user wants to assemble raw material as a narrative.",{"category":22,"check":27,"severity":24,"summary":28},"Unique selling proposition","The skill offers a unique narrative construction approach by breaking down article writing into 'beats' with user-guided pivots, which is distinct from standard article generation.",{"category":22,"check":30,"severity":24,"summary":31},"Production readiness","The skill is fully implemented, capable of handling raw material, writing beats sequentially, offering choices, and managing the article's lifecycle until a natural end.",{"category":33,"check":34,"severity":24,"summary":35},"Scope","Single responsibility principle","The skill focuses solely on the narrative assembly of articles from raw material using a beat-by-beat approach, adhering to a single responsibility.",{"category":33,"check":37,"severity":24,"summary":38},"Description quality","The displayed description accurately and concisely reflects the skill's function of creating narrative articles through a choose-your-own-adventure beat structure.",{"category":40,"check":41,"severity":42,"summary":43},"Invocation","Scoped tools","not_applicable","This skill does not expose tools in the traditional sense; it operates as a conversational agent driven by prompts and instructions within its SKILL.md.",{"category":45,"check":46,"severity":42,"summary":47},"Documentation","Configuration & parameter reference","The skill operates via conversational prompts and instructions within its SKILL.md, and does not expose configurable parameters or options that require external documentation.",{"category":33,"check":49,"severity":42,"summary":50},"Tool naming","The skill does not expose distinct tools with names; its functionality is invoked through the 'writing-beats' skill itself.",{"category":33,"check":52,"severity":42,"summary":53},"Minimal I/O surface","As a conversational skill, it does not expose discrete tools with parameter schemas or response shapes beyond standard prompt/response interactions.",{"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 within the last 90 days, indicating active maintenance.",{"category":59,"check":63,"severity":42,"summary":64},"Dependency Management","The skill does not appear to have external dependencies.",{"category":66,"check":67,"severity":42,"summary":68},"Security","Secret Management","The skill does not handle or expose any secrets.",{"category":66,"check":70,"severity":24,"summary":71},"Injection","The skill's process of writing beats and offering choices from raw material does not involve loading untrusted third-party data as instructions.",{"category":66,"check":73,"severity":24,"summary":74},"Transitive Supply-Chain Grenades","The skill does not fetch remote content or execute external scripts at runtime.",{"category":66,"check":76,"severity":24,"summary":77},"Sandbox Isolation","The skill operates within the conversational agent's sandbox and does not attempt to modify files outside its designated scope or project folder.",{"category":66,"check":79,"severity":24,"summary":80},"Sandbox escape primitives","There are no indications of detached processes or deny-retry loops in the skill's instructions.",{"category":66,"check":82,"severity":24,"summary":83},"Data Exfiltration","The skill focuses on narrative construction and does not involve reading or submitting confidential data to third parties.",{"category":66,"check":85,"severity":24,"summary":86},"Hidden Text Tricks","The bundled content is free of hidden-steering tricks, and descriptions are clean printable ASCII.",{"category":88,"check":89,"severity":24,"summary":90},"Hooks","Opaque code execution","The skill's instructions are in plain, readable markdown and do not involve obfuscated code or runtime fetching.",{"category":92,"check":93,"severity":24,"summary":94},"Portability","Structural Assumption","The skill assumes raw material is provided and operates on an article file, with instructions to save it if not specified, which are standard for this type of task.",{"category":96,"check":97,"severity":98,"summary":99},"Trust","Issues Attention","warning","There are 27 open issues and 117 closed issues in the last 90 days, resulting in a closure rate below 50% and a high number of open issues.",{"category":101,"check":102,"severity":24,"summary":103},"Versioning","Release Management","The repository has a recent push date and a prominent `skills.sh` integration, indicating active development and versioning.",{"category":105,"check":106,"severity":42,"summary":107},"Code Execution","Validation","The skill operates through conversational interaction and does not have explicit input arguments or structured output schemas that require validation.",{"category":66,"check":109,"severity":24,"summary":110},"Unguarded Destructive Operations","The skill's primary operation is writing to a file, which is not a destructive operation in the context of typical code execution security concerns.",{"category":105,"check":112,"severity":24,"summary":113},"Error Handling","The skill provides clear instructions on how to handle different states, including writing beats, offering choices, and reaching a natural end, implying a robust error-handling strategy for conversational flow.",{"category":105,"check":115,"severity":42,"summary":116},"Logging","The skill does not perform destructive actions or outbound calls that would typically require local audit logging.",{"category":118,"check":119,"severity":42,"summary":120},"Compliance","GDPR","The skill does not operate on personal data; it manipulates raw text material for article generation.",{"category":118,"check":122,"severity":24,"summary":123},"Target market","The skill is language-agnostic and operates on raw text, making it globally applicable without regional restrictions.",{"category":92,"check":125,"severity":24,"summary":126},"Runtime stability","The skill relies on standard markdown processing and conversational agent capabilities, ensuring broad compatibility.",{"category":45,"check":128,"severity":24,"summary":129},"README","The README file provides a comprehensive overview of the skills, their purpose, and installation instructions.",{"category":33,"check":131,"severity":42,"summary":132},"Tool surface size","This is a single-function skill and does not expose multiple distinct tools or commands.",{"category":40,"check":134,"severity":42,"summary":135},"Overlapping near-synonym tools","The skill does not expose multiple tools that could be considered near-synonyms.",{"category":45,"check":137,"severity":24,"summary":138},"Phantom features","All advertised features related to shaping an article as a beat-driven narrative are implemented within the skill's instructions.",{"category":140,"check":141,"severity":24,"summary":142},"Install","Installation instruction","The README provides clear installation instructions via `npx skills@latest add` and a setup command for the agent.",{"category":144,"check":145,"severity":24,"summary":146},"Errors","Actionable error messages","The instructions clearly define the workflow steps, expected states, and outcomes, implying actionable guidance for conversational errors.",{"category":148,"check":149,"severity":42,"summary":150},"Execution","Pinned dependencies","The skill does not have third-party dependencies that require pinning.",{"category":33,"check":152,"severity":42,"summary":153},"Dry-run preview","The skill's core functionality of writing to a file is not inherently state-changing in a way that requires a dry-run preview.",{"category":155,"check":156,"severity":42,"summary":157},"Protocol","Idempotent retry & timeouts","The skill operates conversationally and does not involve remote calls or state-changing operations that require idempotency or timeouts.",{"category":118,"check":159,"severity":42,"summary":160},"Telemetry opt-in","The skill does not appear to emit any telemetry.",{"category":40,"check":162,"severity":24,"summary":163},"Precise Purpose","The skill clearly defines its purpose: shaping articles as a narrative journey of beats from raw material, and specifies its use case for narrative assembly rather than argumentative structure.",{"category":40,"check":165,"severity":24,"summary":166},"Concise Frontmatter","The frontmatter in SKILL.md is concise and self-contained, providing a clear summary of the core capability and its intended use.",{"category":45,"check":168,"severity":24,"summary":169},"Concise Body","The SKILL.md body is reasonably concise, outlining the workflow and providing supporting information without excessive length.",{"category":171,"check":172,"severity":24,"summary":173},"Context","Progressive Disclosure","The SKILL.md outlines the main flow and delegates detailed explanations of 'what is a beat' and 'writing one beat' to separate sections within the same file, demonstrating basic progressive disclosure.",{"category":171,"check":175,"severity":42,"summary":176},"Forked exploration","This skill is focused on a direct content generation task and does not involve deep exploration or code review that would necessitate forked context.",{"category":22,"check":178,"severity":179,"summary":180},"Usage examples","info","The README and SKILL.md describe the process but lack concrete, copy-pasteable examples demonstrating input, invocation, and output for the beat-writing process.",{"category":22,"check":182,"severity":179,"summary":183},"Edge cases","The skill documents the happy path of writing beats and ending the journey, but does not explicitly detail failure modes (e.g., malformed input, user edits) or recovery steps.",{"category":105,"check":185,"severity":42,"summary":186},"Tool Fallback","The skill does not rely on external tools like an MCP server and operates internally within the agent's environment.",{"category":188,"check":189,"severity":24,"summary":190},"Safety","Halt on unexpected state","The instructions clearly define the workflow steps and the process for picking beats and writing them sequentially, implying a structured approach that would halt if unexpected states occurred.",{"category":92,"check":192,"severity":24,"summary":193},"Cross-skill coupling","The skill is self-contained and focused on narrative writing, with no explicit or implicit reliance on other skills.",1778693244929,"This skill guides users to collaboratively write articles by breaking content into 'beats'. Users provide raw material, choose starting points, and the agent writes one beat at a time, offering subsequent pivot options until the article is complete.",[197,198,199,200,201],"Shapes articles as a narrative journey of beats.","User picks a starting beat from raw material.","Writes only one beat at a time.","Offers options for next pivots.","Continues until article reaches a natural end.",[203,204,205],"Argumentative or expository article writing.","Generating content without user-provided raw material.","Producing the entire article in one go without user guidance.",[],[],"3.0.0","4.4.0","To help users assemble raw material into a narrative article using a choose-your-own-adventure style, beat by beat.","The skill has a strong focus on its specific purpose and clear instructions, but the high number of open issues and lack of concrete usage examples lower its score.",77,"A narrative-focused writing skill that guides users through article creation beat by beat.",[215,216,217,218,219],"writing","content-generation","narrative","storytelling","markdown","global","community",[223,224,225,226],"Assembling raw notes into a story.","Developing a narrative structure for an argument.","Collaboratively writing articles with an AI assistant.","Exploring different narrative paths for a piece of content.",[228,229,230,231,232,233],"User provides raw material.","User selects a starting beat.","Agent writes the chosen beat to the article file.","Agent offers 2-3 candidate next beats based on the current article.","User selects the next beat.","Agent writes the selected beat and repeats until the article is complete.",{"codeQuality":235,"collectedAt":237,"documentation":238,"maintenance":241,"security":247,"testCoverage":249},{"hasLockfile":236},false,1778693227847,{"descriptionLength":239,"readmeSize":240},351,11516,{"closedIssues90d":242,"forks":243,"hasChangelog":236,"openIssues90d":244,"pushedAt":245,"stars":246},117,6767,27,1778677522000,78489,{"hasNpmPackage":236,"license":248,"smitheryVerified":236},"MIT",{"hasCi":236,"hasTests":236},{"updatedAt":251},1778693245042,{"basePath":253,"githubOwner":254,"githubRepo":255,"locale":18,"slug":13,"type":256},"skills/in-progress/writing-beats","mattpocock","skills","skill",null,{"evaluate":259,"extract":261},{"promptVersionExtension":208,"promptVersionScoring":209,"score":212,"tags":260,"targetMarket":220,"tier":221},[215,216,217,218,219],{"commitSha":262,"license":248},"HEAD",{"repoId":264},"kd70nm2vazehgqc4j28ve6cwv986mv1s",{"_creationTime":266,"_id":264,"identity":267,"providers":268,"workflow":559},1778692842371.0967,{"githubOwner":254,"githubRepo":255,"sourceUrl":14},{"classify":269,"discover":553,"github":556},{"commitSha":262,"extensions":270},[271,287,296,304,312,320,331,344,358,370,388,406,414,422,434,442,450,455,463,471,481,489,497,505,513,521,529,537,545],{"basePath":272,"displayName":273,"installMethods":274,"rationale":275,"selectedPaths":276,"source":285,"sourceLanguage":18,"type":286},"","mattpocock-skills",{"claudeCode":273},"plugin manifest at .claude-plugin/plugin.json",[277,280,282],{"path":278,"priority":279},".claude-plugin/plugin.json","mandatory",{"path":281,"priority":279},"README.md",{"path":283,"priority":284},"LICENSE","high","rule","plugin",{"basePath":288,"description":289,"displayName":290,"installMethods":291,"rationale":292,"selectedPaths":293,"source":285,"sourceLanguage":18,"type":256},"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",[294],{"path":295,"priority":279},"SKILL.md",{"basePath":297,"description":298,"displayName":299,"installMethods":300,"rationale":301,"selectedPaths":302,"source":285,"sourceLanguage":18,"type":256},"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",[303],{"path":295,"priority":279},{"basePath":305,"description":306,"displayName":307,"installMethods":308,"rationale":309,"selectedPaths":310,"source":285,"sourceLanguage":18,"type":256},"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",[311],{"path":295,"priority":279},{"basePath":313,"description":314,"displayName":315,"installMethods":316,"rationale":317,"selectedPaths":318,"source":285,"sourceLanguage":18,"type":256},"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",[319],{"path":295,"priority":279},{"basePath":321,"description":322,"displayName":323,"installMethods":324,"rationale":325,"selectedPaths":326,"source":285,"sourceLanguage":18,"type":256},"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",[327,328],{"path":295,"priority":279},{"path":329,"priority":330},"scripts/hitl-loop.template.sh","low",{"basePath":332,"description":333,"displayName":334,"installMethods":335,"rationale":336,"selectedPaths":337,"source":285,"sourceLanguage":18,"type":256},"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",[338,339,342],{"path":295,"priority":279},{"path":340,"priority":341},"ADR-FORMAT.md","medium",{"path":343,"priority":341},"CONTEXT-FORMAT.md",{"basePath":345,"description":346,"displayName":347,"installMethods":348,"rationale":349,"selectedPaths":350,"source":285,"sourceLanguage":18,"type":256},"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",[351,352,354,356],{"path":295,"priority":279},{"path":353,"priority":341},"DEEPENING.md",{"path":355,"priority":341},"INTERFACE-DESIGN.md",{"path":357,"priority":341},"LANGUAGE.md",{"basePath":359,"description":360,"displayName":361,"installMethods":362,"rationale":363,"selectedPaths":364,"source":285,"sourceLanguage":18,"type":256},"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",[365,366,368],{"path":295,"priority":279},{"path":367,"priority":341},"LOGIC.md",{"path":369,"priority":341},"UI.md",{"basePath":371,"description":372,"displayName":373,"installMethods":374,"rationale":375,"selectedPaths":376,"source":285,"sourceLanguage":18,"type":256},"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",[377,378,380,382,384,386],{"path":295,"priority":279},{"path":379,"priority":341},"domain.md",{"path":381,"priority":341},"issue-tracker-github.md",{"path":383,"priority":341},"issue-tracker-gitlab.md",{"path":385,"priority":341},"issue-tracker-local.md",{"path":387,"priority":341},"triage-labels.md",{"basePath":389,"description":390,"displayName":391,"installMethods":392,"rationale":393,"selectedPaths":394,"source":285,"sourceLanguage":18,"type":256},"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",[395,396,398,400,402,404],{"path":295,"priority":279},{"path":397,"priority":341},"deep-modules.md",{"path":399,"priority":341},"interface-design.md",{"path":401,"priority":341},"mocking.md",{"path":403,"priority":341},"refactoring.md",{"path":405,"priority":341},"tests.md",{"basePath":407,"description":408,"displayName":409,"installMethods":410,"rationale":411,"selectedPaths":412,"source":285,"sourceLanguage":18,"type":256},"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",[413],{"path":295,"priority":279},{"basePath":415,"description":416,"displayName":417,"installMethods":418,"rationale":419,"selectedPaths":420,"source":285,"sourceLanguage":18,"type":256},"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",[421],{"path":295,"priority":279},{"basePath":423,"description":424,"displayName":425,"installMethods":426,"rationale":427,"selectedPaths":428,"source":285,"sourceLanguage":18,"type":256},"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",[429,430,432],{"path":295,"priority":279},{"path":431,"priority":341},"AGENT-BRIEF.md",{"path":433,"priority":341},"OUT-OF-SCOPE.md",{"basePath":435,"description":436,"displayName":437,"installMethods":438,"rationale":439,"selectedPaths":440,"source":285,"sourceLanguage":18,"type":256},"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",[441],{"path":295,"priority":279},{"basePath":443,"description":444,"displayName":445,"installMethods":446,"rationale":447,"selectedPaths":448,"source":285,"sourceLanguage":18,"type":256},"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",[449],{"path":295,"priority":279},{"basePath":253,"description":10,"displayName":13,"installMethods":451,"rationale":452,"selectedPaths":453,"source":285,"sourceLanguage":18,"type":256},{"claudeCode":12},"SKILL.md frontmatter at skills/in-progress/writing-beats/SKILL.md",[454],{"path":295,"priority":279},{"basePath":456,"description":457,"displayName":458,"installMethods":459,"rationale":460,"selectedPaths":461,"source":285,"sourceLanguage":18,"type":256},"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",[462],{"path":295,"priority":279},{"basePath":464,"description":465,"displayName":466,"installMethods":467,"rationale":468,"selectedPaths":469,"source":285,"sourceLanguage":18,"type":256},"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",[470],{"path":295,"priority":279},{"basePath":472,"description":473,"displayName":474,"installMethods":475,"rationale":476,"selectedPaths":477,"source":285,"sourceLanguage":18,"type":256},"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",[478,479],{"path":295,"priority":279},{"path":480,"priority":330},"scripts/block-dangerous-git.sh",{"basePath":482,"description":483,"displayName":484,"installMethods":485,"rationale":486,"selectedPaths":487,"source":285,"sourceLanguage":18,"type":256},"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",[488],{"path":295,"priority":279},{"basePath":490,"description":491,"displayName":492,"installMethods":493,"rationale":494,"selectedPaths":495,"source":285,"sourceLanguage":18,"type":256},"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",[496],{"path":295,"priority":279},{"basePath":498,"description":499,"displayName":500,"installMethods":501,"rationale":502,"selectedPaths":503,"source":285,"sourceLanguage":18,"type":256},"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",[504],{"path":295,"priority":279},{"basePath":506,"description":507,"displayName":508,"installMethods":509,"rationale":510,"selectedPaths":511,"source":285,"sourceLanguage":18,"type":256},"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",[512],{"path":295,"priority":279},{"basePath":514,"description":515,"displayName":516,"installMethods":517,"rationale":518,"selectedPaths":519,"source":285,"sourceLanguage":18,"type":256},"skills/personal/obsidian-vault","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.","obsidian-vault",{"claudeCode":12},"SKILL.md frontmatter at skills/personal/obsidian-vault/SKILL.md",[520],{"path":295,"priority":279},{"basePath":522,"description":523,"displayName":524,"installMethods":525,"rationale":526,"selectedPaths":527,"source":285,"sourceLanguage":18,"type":256},"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",[528],{"path":295,"priority":279},{"basePath":530,"description":531,"displayName":532,"installMethods":533,"rationale":534,"selectedPaths":535,"source":285,"sourceLanguage":18,"type":256},"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",[536],{"path":295,"priority":279},{"basePath":538,"description":539,"displayName":540,"installMethods":541,"rationale":542,"selectedPaths":543,"source":285,"sourceLanguage":18,"type":256},"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",[544],{"path":295,"priority":279},{"basePath":546,"description":547,"displayName":548,"installMethods":549,"rationale":550,"selectedPaths":551,"source":285,"sourceLanguage":18,"type":256},"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",[552],{"path":295,"priority":279},{"sources":554},[555],"manual",{"closedIssues90d":242,"description":557,"forks":243,"license":248,"openIssues90d":244,"pushedAt":245,"readmeSize":240,"stars":246,"topics":558},"Skills for Real Engineers. Straight from my .claude directory.",[],{"classifiedAt":560,"discoverAt":561,"extractAt":562,"githubAt":562,"updatedAt":560},1778692846116,1778692842371,1778692844195,[216,219,217,218,215],{"evaluatedAt":251,"extractAt":565,"updatedAt":251},1778692846401,[],[568,598,626,656,685,715],{"_creationTime":569,"_id":570,"community":571,"display":572,"identity":578,"providers":582,"relations":591,"tags":594,"workflow":595},1778699234184.6199,"k172zjja02my18g0y20nrnempx86nez7",{"reviewCount":8},{"description":573,"installMethods":574,"name":576,"sourceUrl":577},"Agentic memory system for writers - track characters, relationships, scenes, and themes",{"claudeCode":575},"Yeachan-Heo/oh-my-claudecode","writer-memory","https://github.com/Yeachan-Heo/oh-my-claudecode",{"basePath":579,"githubOwner":580,"githubRepo":581,"locale":18,"slug":576,"type":256},"skills/writer-memory","Yeachan-Heo","oh-my-claudecode",{"evaluate":583,"extract":590},{"promptVersionExtension":208,"promptVersionScoring":209,"score":584,"tags":585,"targetMarket":220,"tier":589},99,[215,586,218,217,587,588],"memory","characters","korean","verified",{"commitSha":262},{"parentExtensionId":592,"repoId":593},"k17brg5egdw1jbncj1j4wfv3fh86n639","kd74zv63fryf9prygtq7gf4es986n22y",[587,588,586,217,218,215],{"evaluatedAt":596,"extractAt":597,"updatedAt":596},1778699876689,1778699234184,{"_creationTime":599,"_id":600,"community":601,"display":602,"identity":608,"providers":612,"relations":620,"tags":622,"workflow":623},1778697513812.0593,"k17a20wb5skzqbbxh7gms1p30h86n366",{"reviewCount":8},{"description":603,"installMethods":604,"name":606,"sourceUrl":607},"Write blog posts, guides, tutorials, and long-form content. Sounds like a real person, not AI. Use when the user wants polished written content.",{"claudeCode":605},"spartan-stratos/spartan-ai-toolkit","article-writing","https://github.com/spartan-stratos/spartan-ai-toolkit",{"basePath":609,"githubOwner":610,"githubRepo":611,"locale":18,"slug":606,"type":256},".codex/skills/article-writing","spartan-stratos","spartan-ai-toolkit",{"evaluate":613,"extract":619},{"promptVersionExtension":208,"promptVersionScoring":209,"score":614,"tags":615,"targetMarket":220,"tier":589},100,[215,216,616,617,618],"blog-posts","editing","long-form",{"commitSha":262},{"repoId":621},"kd73rjj0rnrv7y0rz9qc3psn0586n75g",[616,216,617,618,215],{"evaluatedAt":624,"extractAt":625,"updatedAt":624},1778697566395,1778697513812,{"_creationTime":627,"_id":628,"community":629,"display":630,"identity":636,"providers":640,"relations":650,"tags":652,"workflow":653},1778675173113.9802,"k17esrdzfzbxg8d97xmz2spg3d86m3jz",{"reviewCount":8},{"description":631,"installMethods":632,"name":634,"sourceUrl":635},"This skill should be used when the user asks about \"multimedia storytelling\", \"interactive story\", \"longform web feature\", \"cross-platform narrative\", \"scrollytelling\", \"immersive journalism\", \"act as a multimedia story builder\", \"multimedia story mode\", \"web documentary\", \"transmedia narrative\", \"visual storytelling\", \"digital longform\", \"parallax story\", \"Shorthand\", \"Scrollama\", \"StoryMap\", \"interactive feature\", \"Juxtapose\", or needs expertise in designing and producing cross-platform narrative experiences for the web. Part of the AlterLab FC Skills collection (New Media & Communication department).\n",{"claudeCode":633},"AlterLab-IEU/AlterLab-FC-Skills","alterlab-nmc-multimedia-story","https://github.com/AlterLab-IEU/AlterLab-FC-Skills",{"basePath":637,"githubOwner":638,"githubRepo":639,"locale":18,"slug":634,"type":256},"skills/nmc/alterlab-nmc-multimedia-story","AlterLab-IEU","AlterLab-FC-Skills",{"evaluate":641,"extract":649},{"promptVersionExtension":208,"promptVersionScoring":209,"score":642,"tags":643,"targetMarket":220,"tier":589},97,[644,218,217,645,646,647,648],"multimedia","web-production","journalism","content-creation","digital-media",{"commitSha":262},{"repoId":651},"kd77hbyh7fgv1hx4fzbfjj4d1n86m0jx",[647,648,646,644,217,218,645],{"evaluatedAt":654,"extractAt":655,"updatedAt":654},1778675787610,1778675173114,{"_creationTime":657,"_id":658,"community":659,"display":660,"identity":666,"providers":670,"relations":678,"tags":681,"workflow":682},1778686037155.6296,"k173y5vtdrww36ymt290f09bdh86nj09",{"reviewCount":8},{"description":661,"installMethods":662,"name":664,"sourceUrl":665},"Create a six-frame storyboard that shows a user's journey from problem to solution. Use when you need a fast narrative for alignment, concept reviews, or demos.",{"claudeCode":663},"deanpeters/Product-Manager-Skills","storyboard","https://github.com/deanpeters/Product-Manager-Skills",{"basePath":667,"githubOwner":668,"githubRepo":669,"locale":18,"slug":664,"type":256},"skills/storyboard","deanpeters","Product-Manager-Skills",{"evaluate":671,"extract":677},{"promptVersionExtension":208,"promptVersionScoring":209,"score":672,"tags":673,"targetMarket":220,"tier":589},95,[218,674,217,675,676],"product-management","user-journey","documentation",{"commitSha":262},{"parentExtensionId":679,"repoId":680},"k17bszycqp8wna45zp0m4ft20h86ncav","kd79w54je3w4zrhk2stxg9246186nbp1",[676,217,674,218,675],{"evaluatedAt":683,"extractAt":684,"updatedAt":683},1778688211825,1778686037155,{"_creationTime":686,"_id":687,"community":688,"display":689,"identity":695,"providers":700,"relations":708,"tags":711,"workflow":712},1778697045057.978,"k1709qff277g3qreq668nrfj0d86nrrb",{"reviewCount":8},{"description":690,"installMethods":691,"name":693,"sourceUrl":694},"Scrub AI tells from any text draft OR audit a finished post against the 2026 algorithm heuristic checklist. Tier-based rewriter (forensic / strict / aesthetic / all) plus `--mode audit` for detection-only pass-fail review covering length, hook, CTA, format penalties, AI vocab. Sub-tools: emoji-pattern detector, multi-detector spread tester (GPTZero, Originality.ai, ZeroGPT, Sapling, Copyleaks), rule explainer. Triggers on \"humanize\", \"de-AI\", \"review this draft\", \"audit before posting\", \"is this ready\".",{"claudeCode":692},"sergebulaev/linkedin-skills","LinkedIn Humanizer","https://github.com/sergebulaev/linkedin-skills",{"basePath":696,"githubOwner":697,"githubRepo":698,"locale":18,"slug":699,"type":256},"skills/linkedin-humanizer","sergebulaev","linkedin-skills","linkedin-humanizer",{"evaluate":701,"extract":707},{"promptVersionExtension":208,"promptVersionScoring":209,"score":614,"tags":702,"targetMarket":220,"tier":589},[703,704,705,216,706],"ai-detection","text-rewriting","linkedin","nlp",{"commitSha":262,"license":248},{"parentExtensionId":709,"repoId":710},"k17bg3ahwtt998cj512cdc040x86m16m","kd7eh8yxvx7bp76mv9rcfdjk0x86m12a",[703,216,705,706,704],{"evaluatedAt":713,"extractAt":714,"updatedAt":713},1778697181923,1778697045058,{"_creationTime":716,"_id":717,"community":718,"display":719,"identity":725,"providers":728,"relations":735,"tags":737,"workflow":738},1778699106670.4255,"k173sze6h2kdjhyfbveynf98t586n5wt",{"reviewCount":8},{"description":720,"installMethods":721,"name":723,"sourceUrl":724},"Use when the user wants to translate a repository README, make a repo multilingual, localize docs, add a language switcher, internationalize the README, or update localized README variants in a GitHub-style repository.",{"claudeCode":722},"xixu-me/skills","readme-i18n","https://github.com/xixu-me/skills",{"basePath":726,"githubOwner":727,"githubRepo":255,"locale":18,"slug":723,"type":256},"skills/readme-i18n","xixu-me",{"evaluate":729,"extract":734},{"promptVersionExtension":208,"promptVersionScoring":209,"score":614,"tags":730,"targetMarket":220,"tier":589},[731,676,732,219,733],"localization","internationalization","github",{"commitSha":262},{"repoId":736},"kd77r2vb42jmgam0qbr9f2c6kn86mebv",[676,733,732,731,219],{"evaluatedAt":739,"extractAt":740,"updatedAt":741},1778699174967,1778699106670,1778699384013]