[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M77KETEVKT2DNRDPAFST5SCP":3,"skill-same:01M77KETEVKT2DNRDPAFST5SCP":61},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":29,"commitSha":30,"skillDirectory":31,"forksCount":32,"repositoryHtmlUrl":33,"repositoryHomepageUrl":6,"ownerHtmlUrl":34,"ownerBlogUrl":35,"ownerDescription":36,"updatedAt":37,"install":38,"resources":50},"01M77KETEVKT2DNRDPAFST5SCP","blindspot",null,"Surface the USER's unknown-unknowns before they work in unfamiliar territory and coach a sharper prompt. Use when: 'what am I missing', 'find my blindspots', 'blind spot pass', 'what do I not know here', 'sharpen this prompt', 'I am new to this area', or about to work in an unfamiliar area and the goal is a better prompt, not the codebase handoff \u002Fdiscovery:explore produces.","melodic-software\u002Fclaude-code-plugins","melodic-software","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F58273638?v=4","01M77JVQTXNGKCE4MDFY2BC936","Melodic Software","01M77JVQVN9QDWKAH6W03ANP76",30,"MIT","https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fdiscovery\u002Fskills\u002Fblindspot\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\ndescription: \"Surface the USER's unknown-unknowns before they work in unfamiliar territory and coach a sharper prompt. Use when: 'what am I missing', 'find my blindspots', 'blind spot pass', 'what do I not know here', 'sharpen this prompt', 'I am new to this area', or about to work in an unfamiliar area and the goal is a better prompt, not the codebase handoff \u002Fdiscovery:explore produces.\"\nargument-hint: \"[area-or-domain]\"\nuser-invocable: true\ndisable-model-invocation: false\nmetadata:\n  workflow-stage: explore\n  summary: Surface your unknown-unknowns and sharpen the prompt before unfamiliar work\n---\n\n**Arguments.** `[area-or-domain]`. e.g., \u002Fdiscovery:blindspot geofencing, \u002Fdiscovery:blindspot payments module, \u002Fdiscovery:blindspot \u003Cdomain-vocabulary>\n\n## Repository context. Gather first\n\nCollect these with **individual** Bash calls, one command per call, never combined into a single\ninvocation:\n\n- Current branch, `git branch --show-current`\n- Project root, `git rev-parse --show-toplevel`\n\nTreat a failure (not a repository, git unavailable) as an unknown value and carry on. Keep these as\nseparate body Bash calls rather than pre-compute lines ([gather-block convention](https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins\u002Fblob\u002Fmain\u002Fdocs\u002Fconventions\u002Fgather-block\u002FREADME.md#the-pre-compute-block-runs-as-one-shell-invocation),\n\"The pre-compute block runs as one shell invocation\").\n\nThese values orient this session only; resolve files against the project root while working.\n\n## Workflow\n\nThis skill builds the USER's knowledge, not the agent's: the deliverable is the user's\nunderstanding plus one improved implementation prompt, calibrated to their disclosed starting\npoint rather than a fixed depth.\n\n1. **Intake**. Ask the user's starting point first (one question). What they already know bounds\n   which gaps are worth surfacing.\n2. **Scan**. Two lanes, chosen by what is unfamiliar:\n   - **Codebase lane**. Read the target area (the codebase-reading, git-history, and project-structure\n     dimensions in [`${CLAUDE_PLUGIN_ROOT}\u002Fskills\u002Fexplore\u002Freference\u002Fworkflow.md`](${CLAUDE_PLUGIN_ROOT}\u002Fskills\u002Fexplore\u002Freference\u002Fworkflow.md))\n     looking specifically for things the user's framing missed: existing patterns they'd duplicate,\n     constraints they'd violate, historical decisions they'd re-litigate, adjacent code their change\n     would break.\n   - **Domain lane**. Build a lightweight vocabulary ladder grounded in sources fetched this session\n     (repo files, official docs), never bare training recall. Right after the ladder, add a block of\n     the quality axes experts judge the work by, with a worked good-vs-bad example per axis, each\n     grounded in a source fetched this session. The axes are their own block ahead of the cards, not\n     a card type. Each axis becomes a prompt-fix line in the improved prompt, which the user keeps or\n     deletes like any other fix. A criterion the user's framing never named may also appear as a\n     **Missing concept** card.\n3. **Output**. Blindspot cards, then ONE improved implementation prompt assembled from their\n   prompt-fix lines (Output format below).\n4. **Escalate when depth warranted**. A domain too deep for a lightweight ladder gets a\n   recommendation to learn it in a structured way: `\u002Feducation:teach topic \u003Cdomain>` when it is\n   among the available skills, otherwise proper external research, `\u002Fdiscovery:research` invoked\n   via the Skill tool.\n\n## Output format\n\nPresent each blindspot as a card:\n\n- **Type**, one of four: **Landmine** (the change would break something non-obvious), **History**\n  (a constraint whose reason the code no longer shows), **Convention** (an unwritten team rule the\n  work must follow), or **Missing concept** (a domain idea the user's framing never named).\n- **Gap**, the specific thing the user's current framing did not account for.\n- **Why it matters here**, the concrete consequence in this codebase or domain, not a generic caution.\n- **Prompt-fix**, a single copyable line the user can drop into their prompt to close the gap.\n\nThen assemble every prompt-fix into ONE improved implementation prompt, wrapped in clear\ncopy-start \u002F copy-end markers so the exact text to reuse is unambiguous.\n\nEnd with one scan-scope disclosure line: which lane(s) ran and what was and was not scanned (areas\nread, sources fetched). One line, not a methodology dump.\n\nFor a long card list, offer an interactive view in one sentence (cards filterable by type, a tick\nfor each that was news, a copy-out of the reaction). The page is never written beside the cards,\nwhich stay the record. When the reader accepts:\n\n1. Resolve the medium through the shared resolver. Add `--argument \"\u003Cmedium>\"` only when the reader\n   named a medium in the request. `\u003Coption>` is this plugin's `medium` option,\n   `${user_config.medium}`; pass `\"\"` when that reads empty or as an unsubstituted placeholder.\n   Read each option value from this text; never put a `${user_config.*}` string in a shell command.\n\n   ```bash\n   node \"${CLAUDE_PLUGIN_ROOT}\u002Flib\u002Fview-settings.mjs\" resolve --lane discovery:blindspot --option \"\u003Coption>\"\n   ```\n\n   Take the medium from its JSON line only, never from a rendered-views settings file. The step is\n   done when its report line and each notice line are printed as they stand. When `node` is missing\n   or the resolver exits non-zero, build nothing and say in one line why the view was not built.\n2. `page` false: build nothing. The step is done: the cards stand.\n3. `page` true: build the page only with `${CLAUDE_PLUGIN_ROOT}\u002Fscripts\u002Fbuild-view.mjs`, never by\n   hand. With `publishes` true, publish the printed file with the Artifact tool and give the link;\n   when that tool is unavailable, hand back the path and say why in one line. Otherwise hand back\n   the path. The step is done when the reader has the link or the path.\n\nBuild command, data shape, build failures and reply ids:\n[`${CLAUDE_PLUGIN_ROOT}\u002Freference\u002Frendered-view.md`](${CLAUDE_PLUGIN_ROOT}\u002Freference\u002Frendered-view.md),\nsteps 1, 2, 4 and 6 and its \"Discovery: blindspot\" section. The resolver above replaces steps 3 and 5.\n\nThis skill makes no changes and runs no open-ended external research: the domain lane fetches\nofficial docs only to ground the ladder and quality axes, and anything deeper routes to\n`\u002Fdiscovery:research`, invoked via the Skill tool. It does NOT write `EXPLORE.md`. When the scan's findings also serve\nas stage-1 codebase exploration, offer to hand off to `\u002Fdiscovery:explore`, invoked via the Skill\ntool, to persist the `EXPLORE.md` artifact.\n\n## Next\n\n- The scan doubles as stage-1 codebase exploration: `\u002Fdiscovery:explore \u003Carea>`.\n- The prompt is sharpened and ready to scope: `\u002Fplanning:interview`.\n- Unsure where this leaves the work, or arrived mid-flow: `\u002Fsession-flow:workflow`.\n\n## Gotchas\n\n- **Presenting training recall as domain fact**. The domain lane grounds its vocabulary ladder\n  and quality axes, good-vs-bad examples included, in sources fetched this session (repo files,\n  official docs).\n- **Surfacing the agent's gaps instead of the user's**. Cards name what the USER's framing missed,\n  calibrated to their intake disclosure, not a generic audit of the area.\n- **Generic cautions in \"why it matters\"**. Each card's consequence is concrete to this codebase or\n  domain; a caution that would read the same in any repo is not a blindspot.\n- **Writing an artifact by reflex**. No `EXPLORE.md` unless the user opts into the explore handoff.\n","**Arguments.** `[area-or-domain]`. e.g., \u002Fdiscovery:blindspot geofencing, \u002Fdiscovery:blindspot payments module, \u002Fdiscovery:blindspot \u003Cdomain-vocabulary>\n\n## Repository context. Gather first\n\nCollect these with **individual** Bash calls, one command per call, never combined into a single\ninvocation:\n\n- Current branch, `git branch --show-current`\n- Project root, `git rev-parse --show-toplevel`\n\nTreat a failure (not a repository, git unavailable) as an unknown value and carry on. Keep these as\nseparate body Bash calls rather than pre-compute lines ([gather-block convention](https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins\u002Fblob\u002Fmain\u002Fdocs\u002Fconventions\u002Fgather-block\u002FREADME.md#the-pre-compute-block-runs-as-one-shell-invocation),\n\"The pre-compute block runs as one shell invocation\").\n\nThese values orient this session only; resolve files against the project root while working.\n\n## Workflow\n\nThis skill builds the USER's knowledge, not the agent's: the deliverable is the user's\nunderstanding plus one improved implementation prompt, calibrated to their disclosed starting\npoint rather than a fixed depth.\n\n1. **Intake**. Ask the user's starting point first (one question). What they already know bounds\n   which gaps are worth surfacing.\n2. **Scan**. Two lanes, chosen by what is unfamiliar:\n   - **Codebase lane**. Read the target area (the codebase-reading, git-history, and project-structure\n     dimensions in [`${CLAUDE_PLUGIN_ROOT}\u002Fskills\u002Fexplore\u002Freference\u002Fworkflow.md`](${CLAUDE_PLUGIN_ROOT}\u002Fskills\u002Fexplore\u002Freference\u002Fworkflow.md))\n     looking specifically for things the user's framing missed: existing patterns they'd duplicate,\n     constraints they'd violate, historical decisions they'd re-litigate, adjacent code their change\n     would break.\n   - **Domain lane**. Build a lightweight vocabulary ladder grounded in sources fetched this session\n     (repo files, official docs), never bare training recall. Right after the ladder, add a block of\n     the quality axes experts judge the work by, with a worked good-vs-bad example per axis, each\n     grounded in a source fetched this session. The axes are their own block ahead of the cards, not\n     a card type. Each axis becomes a prompt-fix line in the improved prompt, which the user keeps or\n     deletes like any other fix. A criterion the user's framing never named may also appear as a\n     **Missing concept** card.\n3. **Output**. Blindspot cards, then ONE improved implementation prompt assembled from their\n   prompt-fix lines (Output format below).\n4. **Escalate when depth warranted**. A domain too deep for a lightweight ladder gets a\n   recommendation to learn it in a structured way: `\u002Feducation:teach topic \u003Cdomain>` when it is\n   among the available skills, otherwise proper external research, `\u002Fdiscovery:research` invoked\n   via the Skill tool.\n\n## Output format\n\nPresent each blindspot as a card:\n\n- **Type**, one of four: **Landmine** (the change would break something non-obvious), **History**\n  (a constraint whose reason the code no longer shows), **Convention** (an unwritten team rule the\n  work must follow), or **Missing concept** (a domain idea the user's framing never named).\n- **Gap**, the specific thing the user's current framing did not account for.\n- **Why it matters here**, the concrete consequence in this codebase or domain, not a generic caution.\n- **Prompt-fix**, a single copyable line the user can drop into their prompt to close the gap.\n\nThen assemble every prompt-fix into ONE improved implementation prompt, wrapped in clear\ncopy-start \u002F copy-end markers so the exact text to reuse is unambiguous.\n\nEnd with one scan-scope disclosure line: which lane(s) ran and what was and was not scanned (areas\nread, sources fetched). One line, not a methodology dump.\n\nFor a long card list, offer an interactive view in one sentence (cards filterable by type, a tick\nfor each that was news, a copy-out of the reaction). The page is never written beside the cards,\nwhich stay the record. When the reader accepts:\n\n1. Resolve the medium through the shared resolver. Add `--argument \"\u003Cmedium>\"` only when the reader\n   named a medium in the request. `\u003Coption>` is this plugin's `medium` option,\n   `${user_config.medium}`; pass `\"\"` when that reads empty or as an unsubstituted placeholder.\n   Read each option value from this text; never put a `${user_config.*}` string in a shell command.\n\n   ```bash\n   node \"${CLAUDE_PLUGIN_ROOT}\u002Flib\u002Fview-settings.mjs\" resolve --lane discovery:blindspot --option \"\u003Coption>\"\n   ```\n\n   Take the medium from its JSON line only, never from a rendered-views settings file. The step is\n   done when its report line and each notice line are printed as they stand. When `node` is missing\n   or the resolver exits non-zero, build nothing and say in one line why the view was not built.\n2. `page` false: build nothing. The step is done: the cards stand.\n3. `page` true: build the page only with `${CLAUDE_PLUGIN_ROOT}\u002Fscripts\u002Fbuild-view.mjs`, never by\n   hand. With `publishes` true, publish the printed file with the Artifact tool and give the link;\n   when that tool is unavailable, hand back the path and say why in one line. Otherwise hand back\n   the path. The step is done when the reader has the link or the path.\n\nBuild command, data shape, build failures and reply ids:\n[`${CLAUDE_PLUGIN_ROOT}\u002Freference\u002Frendered-view.md`](${CLAUDE_PLUGIN_ROOT}\u002Freference\u002Frendered-view.md),\nsteps 1, 2, 4 and 6 and its \"Discovery: blindspot\" section. The resolver above replaces steps 3 and 5.\n\nThis skill makes no changes and runs no open-ended external research: the domain lane fetches\nofficial docs only to ground the ladder and quality axes, and anything deeper routes to\n`\u002Fdiscovery:research`, invoked via the Skill tool. It does NOT write `EXPLORE.md`. When the scan's findings also serve\nas stage-1 codebase exploration, offer to hand off to `\u002Fdiscovery:explore`, invoked via the Skill\ntool, to persist the `EXPLORE.md` artifact.\n\n## Next\n\n- The scan doubles as stage-1 codebase exploration: `\u002Fdiscovery:explore \u003Carea>`.\n- The prompt is sharpened and ready to scope: `\u002Fplanning:interview`.\n- Unsure where this leaves the work, or arrived mid-flow: `\u002Fsession-flow:workflow`.\n\n## Gotchas\n\n- **Presenting training recall as domain fact**. The domain lane grounds its vocabulary ladder\n  and quality axes, good-vs-bad examples included, in sources fetched this session (repo files,\n  official docs).\n- **Surfacing the agent's gaps instead of the user's**. Cards name what the USER's framing missed,\n  calibrated to their intake disclosure, not a generic audit of the area.\n- **Generic cautions in \"why it matters\"**. Each card's consequence is concrete to this codebase or\n  domain; a caution that would read the same in any repo is not a blindspot.\n- **Writing an artifact by reflex**. No `EXPLORE.md` unless the user opts into the explore handoff.\n",{"metadata":24,"description":7,"argument-hint":27,"user-invocable":28,"disable-model-invocation":20},{"summary":25,"workflow-stage":26},"Surface your unknown-unknowns and sharpen the prompt before unfamiliar work","explore","[area-or-domain]",true,"main","d0e68c3f36b92a1d6381f0ba0060d7a0b8b886c5","plugins\u002Fdiscovery\u002Fskills\u002Fblindspot",7,"https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins","https:\u002F\u002Fgithub.com\u002Fmelodic-software","https:\u002F\u002Fmelodicsoftware.com","Independent software studio building developer tools, automation, and application services, with roots in music.","2026-11-15 05:15:06",{"source":8,"skillName":5,"commands":39,"prompt":49,"zipAvailable":28},[40,43,46],{"tool":41,"command":42},"npx","npx skills add melodic-software\u002Fclaude-code-plugins --skill blindspot",{"tool":44,"command":45},"bunx","bunx skills add melodic-software\u002Fclaude-code-plugins --skill blindspot",{"tool":47,"command":48},"pnpm","pnpm dlx skills add melodic-software\u002Fclaude-code-plugins --skill blindspot","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fdiscovery\u002Fskills\u002Fblindspot\u002FSKILL.md",[51,57],{"path":52,"resourceType":53,"resourceTypeDesc":54,"sizeBytes":55,"sourceHtmlUrl":56},"evals\u002Fevals.json","REFERENCE","参考文档",6201,"https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fdiscovery\u002Fskills\u002Fblindspot\u002Fevals\u002Fevals.json",{"path":58,"resourceType":53,"resourceTypeDesc":54,"sizeBytes":59,"sourceHtmlUrl":60},"templates\u002Fblindspot-view.html",6258,"https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fdiscovery\u002Fskills\u002Fblindspot\u002Ftemplates\u002Fblindspot-view.html",[62,69,76,83,88,95],{"skillNo":63,"name":64,"nameZh":6,"description":65,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":66,"categories":67,"keywords":68,"publishedAt":19},"01M7DYYDG31B9YX7N9MB9QW2GW","track","Backlog reads through the bound tracker: search open and closed items, view one item with its comments and state history. Use when another skill searches or reads tracker items.","https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fsession-flow\u002Fevals\u002Frecall-still-reports-reopened-bug\u002Fwork-items-stub\u002Fskills\u002Ftrack\u002FSKILL.md",[],[],{"skillNo":70,"name":71,"nameZh":6,"description":72,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":75,"publishedAt":19},"01M7DYXVBAVG3NV30PA7GKW9Q6","reviewer-media","Reviewer media for one pull request: decides whether it needs a narrated walkthrough, builds the storyboard from \u002Freview:explain-change's digest, has \u002Fexplainer-video:produce render it and hands the manifest to \u002Fsource-control:pull-request media. Use when asked for 'reviewer media', 'a walkthrough video for this PR', 'a produced video of this change', or when pull-request ready or monitor hands a PR over.","https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Freview\u002Fskills\u002Freviewer-media\u002FSKILL.md",[],[],{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":19},"01M7DYRZ5YD44AMYH26YR25GZ8","route","Model and effort per agent role (orchestrator, worker, verifier, retrieval) for a multi-agent run, resolved through the bundled defaults and the user, team and personal override config layers into fenced JSON with single-agent and fan-out variants and the layer behind each value. Use when asked 'which model for the subagents', 'route the roles' or 'model routing', or before a skill passes a role's model on a spawn.","https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fdiscovery\u002Fevals\u002Fex-model-pin-without-override\u002Fmulti-agent-stub\u002Fskills\u002Froute\u002FSKILL.md",[],[],{"skillNo":84,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":19},"01M7DYRTVT4FWTGDJY0HCCFJMZ","https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Fdiscovery\u002Fevals\u002Fex-model-override-from-route\u002Fmulti-agent-stub\u002Fskills\u002Froute\u002FSKILL.md",[],[],{"skillNo":89,"name":90,"nameZh":6,"description":91,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":94,"publishedAt":19},"01M7DYNZC8PNW3T27V2ADKECKJ","principles","Module-design vocabulary for architecture findings, and the checks built on it. Use when: 'what is a deep module', 'what is a seam', 'deep vs shallow module', 'what is the deletion test', 'leverage and locality', 'module design vocabulary', 'which word do we use for X in architecture findings'. Scanning a codebase for friction is \u002Farchitecture:improve.","https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Farchitecture\u002Fskills\u002Fprinciples\u002FSKILL.md",[],[],{"skillNo":96,"name":97,"nameZh":6,"description":98,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":99,"categories":100,"keywords":101,"publishedAt":19},"01M7DYNMCZNEWBFHV9KTSS6H60","write","Structured five-field bug report (title, steps to reproduce, expected vs actual, justified severity, suggested fix location) from an informal description, read-only. Use when the user names a defect they observed, or asks for one written up ('report a bug', 'file a bug', 'write this up as a bug').","https:\u002F\u002Fgithub.com\u002Fmelodic-software\u002Fclaude-code-plugins\u002Fblob\u002Fmain\u002Fplugins\u002Farchitecture\u002Fevals\u002Fdeepening-defect-goes-to-bugs-write\u002Fbugs-stub\u002Fskills\u002Fwrite\u002FSKILL.md",[],[]]