[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71ESPVX2VP8XZ54VM5Y0WB6":3,"skill-same:01M71ESPVX2VP8XZ54VM5Y0WB6":62},{"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":35,"linkOnly":36,"markdownContent":37,"markdownBody":38,"frontMatter":39,"refName":40,"commitSha":41,"skillDirectory":42,"forksCount":43,"repositoryHtmlUrl":44,"repositoryHomepageUrl":6,"ownerHtmlUrl":45,"ownerBlogUrl":6,"ownerDescription":46,"updatedAt":47,"install":48,"resources":61},"01M71ESPVX2VP8XZ54VM5Y0WB6","enlighten",null,"Explain a topic to someone with no background, as a self-contained HTML picture explainer. Use when the user types \u002Fenlighten \u003Ctopic> or asks for a dead-simple picture explanation of how something works.","shyamsridhar123\u002Fkevin-copilot","shyamsridhar123","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F117464342?v=4","01M71ESN8NA3Z6Z47CJS9WBT0B","Shyam Sridhar","01M71ESNA9HE4YA6ZZSCNYCGJR",8,"MIT","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fenlighten\u002FSKILL.md",[],[5,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34],"as","explanation","when","background","self-contained","for","with","types","how","self","simple","html","use","user","explain","explainer","2026-11-10 10:12:30",false,"---\nname: enlighten\ndescription: Explain a topic to someone with no background, as a self-contained HTML picture explainer. Use when the user types \u002Fenlighten \u003Ctopic> or asks for a dead-simple picture explanation of how something works.\n---\n\n# enlighten\n\nExplain like I'm someone who knows nothing about this topic, using a self-contained\nHTML page with big pictures and few words per idea.\n\nTopic: $ARGUMENTS\n\n> This is the one verbose mode in this repo. Everything else here cuts words.\n> Enlighten spends them, because a reader who does not know the topic cannot\n> expand a fragment.\n\nIf the topic is a repository or a path, read the source first and explain what is\nactually there. Never explain from the name alone.\n\n## Write it for someone with no background\n\n- Short sentences. Everyday words. If a term needs defining, use a different term.\n- One idea per section, with a picture for it.\n- Concrete analogies over abstractions: a bus, a thermostat, a locked door.\n- Keep the interesting parts. Simple does not mean shallow. The clever detail is\n  usually the reason the thing exists, so find a plain-language version of it\n  rather than dropping it.\n- If the source states limits, bugs, or gaps, say so plainly at the end. An\n  explainer that only flatters is not an explanation.\n- Still no filler: no preamble, no closing recap.\n\n## Layout rules, so the artifact does not break\n\nText bleeding out of its box is the failure mode of this skill. It happens when\nlabels are positioned by hand. Avoid it structurally:\n\n- **Lay out with HTML and flexbox, never with hand-placed coordinates.** Use\n  `display:flex; flex-wrap:wrap` rows of boxes. Text then wraps and boxes size to\n  their contents on any screen.\n- **Use SVG only for pure geometry** with no text in it: circles, arrows, bars.\n  The moment a diagram needs a label, put the label in HTML next to or beneath the\n  SVG.\n- **Never put `\u003Ctext>` inside SVG.** SVG text does not wrap, and its width depends\n  on whichever font the viewer has installed, so every hand-placed label is a\n  guess that breaks on someone else's machine.\n- Emoji and unicode arrows make good picture elements and cost nothing.\n- Cap prose at about `max-width: 46ch` so lines stay readable.\n- Give the page a mobile breakpoint: shrink the glyphs, and rotate horizontal\n  arrows 90 degrees when the row stacks into a column.\n\n## Verify before saying it is done\n\nDo not trust a screenshot for layout. Serve the file, then measure:\n\n- Compare `document.documentElement.scrollWidth` against `clientWidth`. They must\n  match, or something is overflowing horizontally.\n- For each element, check `getBoundingClientRect().right` against its parent's\n  right edge. Nothing should exceed it.\n- Check at a narrow width (375px) and a wide one.\n\nReport the measurements. A screenshot can be cropped by the capture tool and show\nclipping that is not really there, which reads as a bug you then chase for nothing.\n","# enlighten\n\nExplain like I'm someone who knows nothing about this topic, using a self-contained\nHTML page with big pictures and few words per idea.\n\nTopic: $ARGUMENTS\n\n> This is the one verbose mode in this repo. Everything else here cuts words.\n> Enlighten spends them, because a reader who does not know the topic cannot\n> expand a fragment.\n\nIf the topic is a repository or a path, read the source first and explain what is\nactually there. Never explain from the name alone.\n\n## Write it for someone with no background\n\n- Short sentences. Everyday words. If a term needs defining, use a different term.\n- One idea per section, with a picture for it.\n- Concrete analogies over abstractions: a bus, a thermostat, a locked door.\n- Keep the interesting parts. Simple does not mean shallow. The clever detail is\n  usually the reason the thing exists, so find a plain-language version of it\n  rather than dropping it.\n- If the source states limits, bugs, or gaps, say so plainly at the end. An\n  explainer that only flatters is not an explanation.\n- Still no filler: no preamble, no closing recap.\n\n## Layout rules, so the artifact does not break\n\nText bleeding out of its box is the failure mode of this skill. It happens when\nlabels are positioned by hand. Avoid it structurally:\n\n- **Lay out with HTML and flexbox, never with hand-placed coordinates.** Use\n  `display:flex; flex-wrap:wrap` rows of boxes. Text then wraps and boxes size to\n  their contents on any screen.\n- **Use SVG only for pure geometry** with no text in it: circles, arrows, bars.\n  The moment a diagram needs a label, put the label in HTML next to or beneath the\n  SVG.\n- **Never put `\u003Ctext>` inside SVG.** SVG text does not wrap, and its width depends\n  on whichever font the viewer has installed, so every hand-placed label is a\n  guess that breaks on someone else's machine.\n- Emoji and unicode arrows make good picture elements and cost nothing.\n- Cap prose at about `max-width: 46ch` so lines stay readable.\n- Give the page a mobile breakpoint: shrink the glyphs, and rotate horizontal\n  arrows 90 degrees when the row stacks into a column.\n\n## Verify before saying it is done\n\nDo not trust a screenshot for layout. Serve the file, then measure:\n\n- Compare `document.documentElement.scrollWidth` against `clientWidth`. They must\n  match, or something is overflowing horizontally.\n- For each element, check `getBoundingClientRect().right` against its parent's\n  right edge. Nothing should exceed it.\n- Check at a narrow width (375px) and a wide one.\n\nReport the measurements. A screenshot can be cropped by the capture tool and show\nclipping that is not really there, which reads as a bug you then chase for nothing.\n",{"name":5,"description":7},"main","0256fccfa68825bb93a1b37467a7377bd34280af",".claude\u002Fskills\u002Fenlighten",1,"https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123","Engineer, Printf Debugger, Vibe Coder, AI Enthusiast","2026-08-25 22:42:12",{"source":8,"skillName":5,"commands":49,"prompt":59,"zipAvailable":60},[50,53,56],{"tool":51,"command":52},"npx","npx skills add shyamsridhar123\u002Fkevin-copilot --skill enlighten",{"tool":54,"command":55},"bunx","bunx skills add shyamsridhar123\u002Fkevin-copilot --skill enlighten",{"tool":57,"command":58},"pnpm","pnpm dlx skills add shyamsridhar123\u002Fkevin-copilot --skill enlighten","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002F.claude\u002Fskills\u002Fenlighten\u002FSKILL.md",true,[],[63,79,96,110,120,133],{"skillNo":64,"name":65,"nameZh":6,"description":66,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":67,"categories":68,"keywords":69,"publishedAt":35},"01M71EW4N5RQ70SERKYZB2GBDM","kevin-review","Review a diff and emit concise, evidence-backed findings.","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fkevin-review\u002FSKILL.md",[],[70,71,72,73,74,75,76,77,78],"kevin review","review","request","concise","evidence","diff","branch","pull","pull request",{"skillNo":80,"name":81,"nameZh":6,"description":82,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":83,"categories":84,"keywords":85,"publishedAt":35},"01M71EW36CP1KVDES6KGB8APZZ","kevin-merit","Audit a diff for over-engineering and report it as a corporate merit cycle. Satire; the subject is the code, never a person.","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fkevin-merit\u002FSKILL.md",[],[86,75,78,87,88,77,89,90,76,91,92,19,93,94,24,95,72],"kevin merit","code","report","audit","engineering","never","cycle","it","corporate","person",{"skillNo":97,"name":98,"nameZh":6,"description":99,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":100,"categories":101,"keywords":102,"publishedAt":35},"01M71EW0YHNR57136MENKW4YSD","kevin-help","Show Kevin modes, commands, and runtime controls.","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fkevin-help\u002FSKILL.md",[],[103,104,105,106,107,108,109],"kevin help","help","commands","modes","show","runtime","controls",{"skillNo":111,"name":112,"nameZh":6,"description":113,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":114,"categories":115,"keywords":116,"publishedAt":35},"01M71EVYYH5QASNZ1KB6C3GMDJ","kevin-enlighten","Explain a topic to someone with no background as a self-contained HTML picture explainer.","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fkevin-enlighten\u002FSKILL.md",[],[117,5,118,34,33,30,28,19,25,119,23,22],"kevin enlighten","repository","path",{"skillNo":121,"name":122,"nameZh":6,"description":123,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":124,"categories":125,"keywords":126,"publishedAt":35},"01M71EVX29VAGHZJZKAKQ97M7X","kevin-compress","Compress an answer without losing required information or safety warnings.","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fkevin-compress\u002FSKILL.md",[],[127,128,129,130,131,132],"kevin compress","compress","Safety","text","information","answer",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":139,"publishedAt":35},"01M71EVVDWF888W10KA0D3N4W5","kevin-commit","Generate a terse Conventional Commits message from the staged diff.","https:\u002F\u002Fgithub.com\u002Fshyamsridhar123\u002Fkevin-copilot\u002Fblob\u002Fmain\u002Fplugin\u002Fskills\u002Fkevin-commit\u002FSKILL.md",[],[140,141,142,143,75,144,145,146,147,148],"commit","kevin commit","generate","commits","conventional commits","message","focus","staged","terse"]