{"_id":"@han-kyeon/claude-skills","_rev":"47-4ed9f0e6d4c96cbe6207b1bf221e8032","name":"@han-kyeon/claude-skills","dist-tags":{"latest":"0.35.0"},"versions":{"0.2.0":{"name":"@han-kyeon/claude-skills","version":"0.2.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.2.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"da1e1fdd7cd2c2b19bc2de75a2eefa4a2352e5ec","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.2.0.tgz","fileCount":57,"integrity":"sha512-tVFuHc47kZiJdas6qJUISWbEgU9ziXaghOgOAR6dbNS9i1GTGQErpqq75Da+jjo5Wtm+nT/wY5L1H/ne4Fa/RQ==","signatures":[{"sig":"MEYCIQCeV2O9xxZXXSCFA9v6lV+fzHhdG8DctI2rZpwrOSg2sQIhAO5Gq2ZV7BokmPPqFFhAOxYZ+hINqPTJcQWgoZsQVRvk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":240200},"engines":{"node":">=18"},"gitHead":"2d449fed81a0ca81b5c239f95971590da2c340e1","scripts":{"test":"node bin/cli.js list --target ./.test-target"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory for frontend workflows","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.2.0_1776668958471_0.5453465136343159","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@han-kyeon/claude-skills","version":"0.3.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.3.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"2ba968e00f7b9eb62962581fe255cbe5ff552f31","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.3.0.tgz","fileCount":71,"integrity":"sha512-uio4pb8H3C2whbwhBbHWPhGH6Qgt6kNVvavQRlJOH1ziTRKZ4TVapp6Wow+Zqtz3f55NFJm1Y9bjMcH0aOaV/A==","signatures":[{"sig":"MEUCIDAtgii/EUPbZ2ZDaK5tXNDuXTti93eCjTVkKaaZ2b/yAiEA9hXkbXf0VEhAczHHqGk/n8AKTxz1+vGj28sYlWkHY00=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":377573},"engines":{"node":">=18"},"gitHead":"5979999dc31ac66d10c0ec31db381b4da18339df","scripts":{"test":"node bin/cli.js list --target ./.test-target"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory for frontend workflows","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.3.0_1776731514223_0.28718301031756344","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@han-kyeon/claude-skills","version":"0.4.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.4.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"3c335ce765f9a54ff69f979947267037659a65bd","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.4.0.tgz","fileCount":72,"integrity":"sha512-Ek3hP0JdA24YgJreggylh9J1yV4GhKSRKUTz4830Ywsyl0S+I5Dylto4vKhzc70+F1h6W8CX7XvEPJUaJu/INw==","signatures":[{"sig":"MEUCIQCqpZC8E6ypfUUfvCpT11gjG4ll4gX65etQ08CqlYpB3gIgV//ATirKg1sSd7ALK1qybxEIDzzFR3F4Cuee7QzIqeQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":391022},"engines":{"node":">=18"},"gitHead":"9b68821730672ef05530b43891b702a999941789","scripts":{"test":"node bin/cli.js list --target ./.test-target"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory for frontend workflows","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.4.0_1776744444373_0.9360460791685741","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@han-kyeon/claude-skills","version":"0.5.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.5.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"514c78bff20aa7486b8873a95acdd23a7d3f33ed","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.5.0.tgz","fileCount":72,"integrity":"sha512-nG/Xvca+fZkqVn/xCR3YvusKLW985RLQztmi2nAQu9rrWpHuwmZWSL00upsKFWkoO8YNvOKukBGrEG/5/dI4wA==","signatures":[{"sig":"MEQCIAxQa26w8qf+zhnDj3eTj/nRoWoKlR7eovSyB/frI8HmAiA49XN2Ro1zxt0lSpA9d/kqertqh2QtEAwGKtfurjt4Rg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":395372},"engines":{"node":">=18"},"gitHead":"615c81e0de7bdd2220223e6bbc9fab2b0cbf9515","scripts":{"test":"node bin/cli.js list --target ./.test-target"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory for frontend workflows","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.5.0_1776745934128_0.019772464534549172","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@han-kyeon/claude-skills","version":"0.6.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.6.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"7ea1b5a7105855603beeadb877f682ee2ca2abd0","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.6.0.tgz","fileCount":78,"integrity":"sha512-C/U/E+ml+F3fngeCx//hfsZwED0/MpmvmQi+FrV/QzBfIFOwVBKdEd3KbdAysLOtFgqN2s/Jvz1Gx73Z3x9oyg==","signatures":[{"sig":"MEUCICLHwgdp1Ex1k3LUPuSNlmJCZyKnT/MVWK+S0BK/S6Y2AiEAhfpzPKEPdEt7xGNhJ18iGxHCL5P8757vdwky31DCe2U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":459992},"engines":{"node":">=18"},"gitHead":"a3cd9f86a441b51126338e468d052ea42f762302","scripts":{"test":"node bin/cli.js list --target ./.test-target"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.6.0_1776757834988_0.634480626513017","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@han-kyeon/claude-skills","version":"0.7.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.7.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"623cabd977b735638113d37ce2bdfa252dfc5bb4","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.7.0.tgz","fileCount":84,"integrity":"sha512-aMY7cdV9O510K5hZcMcvy3eZVY+0d9flzkk/RR8SCHhWE7CywVdsD5JxXkXvJXBIDfNj1zJo8r3H8HnS/aECDQ==","signatures":[{"sig":"MEYCIQCw7StC6GtHcScTXA0p6x+Rp8VBY8bu4Kjj26GDlXoUvAIhALuTN7DgC8BPFeT6SQA9qYUUSG3pDYRxjm9U3zS8Z9c/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":505849},"engines":{"node":">=18"},"gitHead":"a4d2f405999b7365358f9f82e5f18da14ccb034d","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.7.0_1776814477869_0.9926423847924102","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@han-kyeon/claude-skills","version":"0.8.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.8.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"277a6198784c149cf1e87218f065aa2e07b5fdeb","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.8.0.tgz","fileCount":86,"integrity":"sha512-Q5qEu59hN6DZ+o4mSADY91XWKDnN7zh/Q84IMHpSCU74H3w8aUYPDF1WxW5Vd06BshHbsPkmYVrlbGPEtCy5Xw==","signatures":[{"sig":"MEQCICLyBOMAD00USNeweJwOTzEXCgs8N1PmwWei8yVaDTXEAiAxNlK7zACqPKNoW2eXwuF8AS/HV6hwbZqMPiRkXqURCA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":538389},"engines":{"node":">=18"},"gitHead":"404127f8a1ad911e396d131ec521c8c2bebf46b7","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.8.0_1776839688518_0.20114531658851353","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@han-kyeon/claude-skills","version":"0.9.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.9.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"33e6078ef3e102c7468876e17539bb2611da50f6","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.9.0.tgz","fileCount":88,"integrity":"sha512-wqfT0t/hpqqrmdNnHwuHZYALwnZzgOL9mfLYeh1iX+53T1bu7+CHjmhIOgRZG4NCLmN2hbFmCcjTosQwcwGjbw==","signatures":[{"sig":"MEYCIQDVhxHV5MMngO4XJf86Mvuu9IKkRZSWgy4vp/+r/Fc65wIhAIW4v+jexpSKqLUUgM6/eEeqEdVMlwQYaGHIOZlCrCT3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":555353},"engines":{"node":">=18"},"gitHead":"cc1350dcbc213186dd31877b7aaf984ba9f17596","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.9.0_1777437795754_0.8690908209829658","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@han-kyeon/claude-skills","version":"0.10.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.10.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"4854390501c2f1fc737d17fb7a64c25cd7b1ae7b","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.10.0.tgz","fileCount":98,"integrity":"sha512-3eFciQddWpYxlEZdl6GGiFMOrDAPqyytbUNqd2REZ2iLB/+jBA5Z/31jjuF6upJhnQ2dNTeSyg4++iN/Y7JHeA==","signatures":[{"sig":"MEUCIQDcsidpCGg8/JzzGBkr/ibnJM31BfNMX7Gpnw2P55do2AIgbZgqbvzFIk3p34MnQwrJncRFmlcyuSApPkQr1NcZeHY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":656985},"engines":{"node":">=18"},"gitHead":"c39a6d4bf1caab1bf8b7bad67e45862b4eaaedc5","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.10.0_1778120611601_0.1654125476862467","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@han-kyeon/claude-skills","version":"0.12.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.12.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"064ca7fe63deb534016f820c5f5a0af12303f0a9","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.12.0.tgz","fileCount":101,"integrity":"sha512-QvXzncsfn2dPWori3Xu7uuO5sMaMG/bEfroUuqcHjKid81MLMjDUcYtqat41Kv3eY4euB7ltjKXOZBWdmisttw==","signatures":[{"sig":"MEUCICZdA+MP9s/qk9qctAVlQG2od6yQ6AL+D07Q8HJrK5tOAiEAq4pRCPKCx+EOoq+/6k+3zA0CK+1JVvLafytseJJHr0Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":707363},"engines":{"node":">=18"},"gitHead":"5a546f7c44ae61406922d18f1c9c3d5c3c376453","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.12.0_1778123048120_0.3187937796447926","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@han-kyeon/claude-skills","version":"0.13.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.13.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"e71fbaeb4df0f85f307f83dc54912fc6d80be06a","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.13.0.tgz","fileCount":102,"integrity":"sha512-Z4GWUl9xxuK4OvfaS2tisslAvlgHY0Y/ypaYKV3MkQrcdXEBHITH6rCX/jsJ1WClqzja2C21aLGHg5tku0dtJw==","signatures":[{"sig":"MEUCIBrbYVFlR2dI420p9aUzRfhh7Pmny/PhYpSEI/Jzn989AiEAt7lprhT/b+xUV8W1+l81kkc8eVnCr3hJPXesneBdBB4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":718253},"engines":{"node":">=18"},"gitHead":"a5d0e2da147443a55a2b2cce2f9540425a0dff5a","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.18.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.13.0_1778123817045_0.039412743270815565","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"@han-kyeon/claude-skills","version":"0.15.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.15.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"6a926094a72e9f7f53a0a35002821923a3b69783","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.15.0.tgz","fileCount":109,"integrity":"sha512-7zkaFOQ5Tr7cYx1wVNQKZGw3R0o534bfdrU18FJG3JggJlE05p/j8+su6NDw26o0mMVSZGitLwbuD+aGjbuZqg==","signatures":[{"sig":"MEUCIQD7PTGvTzjXkS06llgAd2QBI239rCM6Vilhqunpd3zjbAIgLRiKNgK6ajGPaEGXU9j8a9ptFM/57o8SCIVqLeyZvsQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":749920},"engines":{"node":">=18"},"gitHead":"d3a1cfe5b23b68dd1946e466508701450426e95f","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.15.0_1778717460834_0.9171989922165666","host":"s3://npm-registry-packages-npm-production"}},"0.15.1":{"name":"@han-kyeon/claude-skills","version":"0.15.1","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.15.1","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"64b32db4c75e296e7ba87ecbdf9f058109f8e748","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.15.1.tgz","fileCount":109,"integrity":"sha512-hE/QenjU7cHU1owJaWXWC6/WhNRMoaU6DaiVhT+2meFxsNSXBaGj/MYL56gJVkNgxJW1VSI5imqGWGDPwanYMg==","signatures":[{"sig":"MEQCICjYzrRlFyGJylfqxb2sijGHjYi6fKGh5QPOIk9Nx9eTAiB7z16BtHAhFguqF0qIrMlv7N2tj63zbJsvYuR/rFKVbA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":753154},"engines":{"node":">=18"},"gitHead":"22b7fef54939c68524c63b49a3860df77ea63252","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.15.1_1778720095441_0.8737991161335383","host":"s3://npm-registry-packages-npm-production"}},"0.15.2":{"name":"@han-kyeon/claude-skills","version":"0.15.2","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.15.2","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"518ee588fc50a581577802397840b67c11a22b06","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.15.2.tgz","fileCount":109,"integrity":"sha512-rwkyo82j5B7ng3zjOyJmWV3kapCgGRTTCf1eLhnnO3RlY7hnytdoUN48F5QgyyYlQ90cLdzlm6pDslhaVbK5Sg==","signatures":[{"sig":"MEYCIQDLba2Xarcl5JNbdN8F2b0eRtIPuuaSmDnFHPNQjLA1TQIhANuRNXhDcw20AVrtfbdtwy2DU2Q4Gdeenj+1AS2t+RXr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":755708},"engines":{"node":">=18"},"gitHead":"9d4a0676fe9ada4b462ec0c33e9ff325bece7e10","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.15.2_1778723472372_0.7140644140022685","host":"s3://npm-registry-packages-npm-production"}},"0.16.2":{"name":"@han-kyeon/claude-skills","version":"0.16.2","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.16.2","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"19a166538c2b477763933c123325f68a05ffd249","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.16.2.tgz","fileCount":113,"integrity":"sha512-tWsV+AnyPpePuWzVO7Xla6Hx8s07QyZ22o2cxsXicLBhbfpzWdTnTBGrtNEaCfs9ZNOkD0ehign3/tLok2NAcw==","signatures":[{"sig":"MEYCIQDag+MN++Lz8tY0Q1Hvm8dIDGmgzSuql1aPytyTflTHhAIhAMta6oDd0+n6dpjGvE7zgw3cPWeET2LdRiUElNz0x+QD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":800706},"engines":{"node":">=18"},"gitHead":"3f157d3095d2111cba7819f385b647e44ce321f6","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.16.2_1778747639448_0.4997585541603169","host":"s3://npm-registry-packages-npm-production"}},"0.16.3":{"name":"@han-kyeon/claude-skills","version":"0.16.3","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.16.3","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"9344bae9ca396f7f225a77afeedc075c9715f4d5","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.16.3.tgz","fileCount":113,"integrity":"sha512-ZJBFBXW3zBGhegKDQUKwh2rCsaW0ZQr5kF0jh5I1cFqcZoOMNm84A0pyP3p14YXeuFaALFBcJInoQh5MeK2RRA==","signatures":[{"sig":"MEUCIFis2GvbX+aFw1zehYNZbFsPDGB2yOku8eb0fleecvp9AiEAysr5TKlA/CiTj9NJEVgfSk/G1JSTieUtrRFadf/12o0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":807967},"engines":{"node":">=18"},"gitHead":"01e89c3ad83d00372898109412d24bff1d18a039","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.16.3_1778748939271_0.3415400674073896","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"@han-kyeon/claude-skills","version":"0.18.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.18.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"c9405a50bc3376cb8203a4e114a72b61cce8e3db","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.18.0.tgz","fileCount":114,"integrity":"sha512-iaCFcl/m9ebfLFXSB9ljrL3D6PVZmVLfuW7kmVytoEJX/Po2d5DYTEjVniORbRoJT2jJ+J9GJAExzhOQVUyQBw==","signatures":[{"sig":"MEYCIQDAl8KQFNbxPl41NwCdhjo88BYsnTdAL9+7CCjVjRaLxgIhAJvOb1vP+5EVtIys2QtHe0+Nr0vRfuQpENAMgE/mSEeR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":826284},"engines":{"node":">=18"},"gitHead":"ac5cb78396665d93f02e27a5dce2d79b413544c0","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.18.0_1778795461117_0.5510863368349768","host":"s3://npm-registry-packages-npm-production"}},"0.18.1":{"name":"@han-kyeon/claude-skills","version":"0.18.1","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.18.1","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"287c1b4b987ef7a9c09ddd950e53b48852820a12","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.18.1.tgz","fileCount":114,"integrity":"sha512-u0hzEm3yEir0WOicuH+Pj+asA442QT7FoO6CxqwHCsEgQZn74c0jYEJvzNX5mwM+93t7nDjvE+IXc3/X3902Lg==","signatures":[{"sig":"MEUCIAxbaX0J+hEDW7nyFjAdGcE+a63nQwPTZyCAX6Nuhzr9AiEA6yTX+F4KM2Sxf8oCJpQUlquFnEoTn3VBlE7cGyjMczE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":756615},"engines":{"node":">=18"},"gitHead":"d885e788ce449d1b7983856688fc0726c9f73764","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.18.1_1778799919329_0.33665738909757437","host":"s3://npm-registry-packages-npm-production"}},"0.18.2":{"name":"@han-kyeon/claude-skills","version":"0.18.2","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.18.2","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"5ee748525aca927c0df8212d4c62dd0139a33f5f","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.18.2.tgz","fileCount":114,"integrity":"sha512-VGd3qnIx/Gk7YtrlPK+nA+c3i5eXAkYWFi446PZ/dFVXedI8Uo4Z9WPkEVboS+w40zhSKJRUGBCI9O0EyU1Jug==","signatures":[{"sig":"MEQCIFGTD3H4sB3maP8qRIqhfjc5O28VmbDFM9+cJtrblP57AiBfP7WkoN5/zu0ulBxEI4xS1ZprOPiMzm0941qB7gsGZg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":756615},"engines":{"node":">=18"},"gitHead":"d885e788ce449d1b7983856688fc0726c9f73764","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.18.2_1778800296078_0.8785342652211474","host":"s3://npm-registry-packages-npm-production"}},"0.19.0":{"name":"@han-kyeon/claude-skills","version":"0.19.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.19.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"23e134d876e1e47068a7adc767f04fae83cf52b9","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.19.0.tgz","fileCount":114,"integrity":"sha512-UB2+NlXuTay+biReoWZrnKJlrWkr2uPTa3cDQOlmwOugHUXp1wB24a/Vxgcs6RzEvNt3jP2uG8OYVyVCl+7OVg==","signatures":[{"sig":"MEUCIQCiPbdjU4sF40T8KUUq27A9ojNh7KWjNJfGhrcOicwEnwIgHLMeExfBexooJp464e590Eq07DnOg+HLWPCuhwnyaEo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":757862},"engines":{"node":">=18"},"gitHead":"d885e788ce449d1b7983856688fc0726c9f73764","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.19.0_1778803461620_0.570069913365018","host":"s3://npm-registry-packages-npm-production"}},"0.19.1":{"name":"@han-kyeon/claude-skills","version":"0.19.1","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.19.1","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"07bd36f0e0e8ccafbe617ab8b601b4c8efe0ff5f","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.19.1.tgz","fileCount":114,"integrity":"sha512-DUIJzRAD7kVu2vCcvwXtvETVtmnZZYhZnkou9NLUDL0JrktNHpczmnn+QcifHXiPlYDPJ0RUiMdDcdbofAq52A==","signatures":[{"sig":"MEUCIHKzSGDi6BFX/jomBwCQl2FIJG+znlVM6x1IAg53sUpZAiEAkXw3zqhYYl2cNaJ/G0Hj0OWfeQ3uli1aJSeJr6949OA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":763784},"engines":{"node":">=18"},"gitHead":"868559b2f9e4759ec444169b8a6a09c92cb34cf8","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.19.1_1778806578551_0.5680173551190577","host":"s3://npm-registry-packages-npm-production"}},"0.19.2":{"name":"@han-kyeon/claude-skills","version":"0.19.2","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.19.2","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"ad9810e8e53f741c5ac1ed56fcc46304b288dfd0","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.19.2.tgz","fileCount":114,"integrity":"sha512-8INuIwX6ZoI7Bha2Q+T5MmSQoS7UL3NQ3aLPgVA04d0Lr9gkJSuiKzx/T9pPDQUi3zI6mDV7YvbJC2jDyb5O2w==","signatures":[{"sig":"MEYCIQD1EwuOs8US5kK8DjEp/71Bnim9nBg+bcdX52kV1TCzVwIhAIA072X8jV0U1xi6HjDX0Ws2lP4Akx4BbZvYLQl/TNGb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":764967},"engines":{"node":">=18"},"gitHead":"9c19fbe934e1f6f5f62db91ec01f90abef7f90e0","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.19.2_1778812158410_0.9877153392660936","host":"s3://npm-registry-packages-npm-production"}},"0.19.3":{"name":"@han-kyeon/claude-skills","version":"0.19.3","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.19.3","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"2128edd72e1f3cf840cf816e513a513de5b8ff02","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.19.3.tgz","fileCount":114,"integrity":"sha512-m93eAvS/liQlPym/2RGpjG4cl/Oz7O1sdkMvulu/ymJqjwahs5K5+4Hfw9hGUZ0frakLz5Ufr/OQwNWPvTU6Aw==","signatures":[{"sig":"MEUCIQD05zAU3x+OL6Vhtm8JDfavcg7auMSXBNQUz2o7liAIQQIgILI6YOm50AoXz41PBJpr8EB9jJKtMNoXJCLV8bvgYB4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":768515},"engines":{"node":">=18"},"gitHead":"29aa997223b55ebe67c86be70bd07072a4e71679","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.19.3_1779060139845_0.3718668356053212","host":"s3://npm-registry-packages-npm-production"}},"0.20.0":{"name":"@han-kyeon/claude-skills","version":"0.20.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.20.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"75877601f71ff811de8878a175a6b21b62bf143b","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.20.0.tgz","fileCount":115,"integrity":"sha512-OD7EYk2dSlrN38WM8JT8efJaDySrJRxTDTYtGpKcZg6jtw3oWWi06EGtZQsa/71PXntiIQj4jSYwRYGf3FoCvA==","signatures":[{"sig":"MEUCIQCEb+Yfhi4QMNb8mMNzeDeocJzVf6l3qfsPhNf8EkmQ/AIgHpXbHEkxG630fXN9Ejv5PXYJqWjWhP+Bri+NOiaJRaE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":782054},"engines":{"node":">=18"},"gitHead":"71083bfce0b01cf63c629fee53c58ac790cd1f3f","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.20.0_1779176059474_0.7344696155785142","host":"s3://npm-registry-packages-npm-production"}},"0.21.0":{"name":"@han-kyeon/claude-skills","version":"0.21.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.21.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"eca377645d0d19e1854f5e242f0053ae363db26b","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.21.0.tgz","fileCount":116,"integrity":"sha512-Xnrwhn1Gst5ZTfXzBQy1zz2PSXIZr+2RR2DYKRPN9MbdJJXA8BMDK1UbmVfrjtdj9a9F5M7xOm1rM2XACtHeLA==","signatures":[{"sig":"MEUCIQDk3JGP1/Xjc0aYrqcMA0vlXHf9FhYQzesse+5eZQMbnQIgVrWf8CQZNOR5A1gY3FuwasyW5bR7ayluXzpZqJILe4k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":793740},"engines":{"node":">=18"},"gitHead":"ba97b7bc793fd48f5a3a516bda13cb04a57882af","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.21.0_1779231572078_0.3110769961262987","host":"s3://npm-registry-packages-npm-production"}},"0.22.0":{"name":"@han-kyeon/claude-skills","version":"0.22.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"name":"hankyeon"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.22.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"f599b39e8e32bcb0ca1efde9973fa32d34aa5fea","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.22.0.tgz","fileCount":118,"integrity":"sha512-E6F9UMHnoGCwiAanNjejuTnOBdPl8ufH2RKjMHnnG7i40WFzfKbOnx8JkqHLbIIT1tZ2fFhtiQXBURGiYwe6qg==","signatures":[{"sig":"MEUCIQCUoi5I1dDBT8ON1yl+2QNFReC+U9/VItL9xNkRU/mgYQIge1JLVpuxHITnTwoUKidS3cCK05QzJWOUXX+stDvEgT8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":812824},"engines":{"node":">=18"},"gitHead":"d5d164a5823fbbb464f106c61e419ab7ba63f00f","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.22.0_1779235429650_0.7997836105539282","host":"s3://npm-registry-packages-npm-production"}},"0.22.1":{"name":"@han-kyeon/claude-skills","version":"0.22.1","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.22.1","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"6229e2808b0f4b3a3e26c11a4b06410b89fed9a1","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.22.1.tgz","fileCount":118,"integrity":"sha512-C/dxuBIeqFA2C+QTBFCYZYoa20Fc0sgxzQPh0v+kbdKdYB9HLLrhT4QKBxYoel6zt8+IBW1jUerjdA14n3c1EQ==","signatures":[{"sig":"MEQCIBflsKBr4+MYxESDvLyCQ8kLxjqnxQLB6vcpglcHWfbQAiA7OIiDPPXT+hNZgsS9CsmKA6kxQDsXqdGzRuOxjSuX4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":813038},"engines":{"node":">=18"},"gitHead":"b9e6b0880bfb4398ef0eab17cabb3f0663ad4042","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.22.1_1779244608078_0.44795401670677615","host":"s3://npm-registry-packages-npm-production"}},"0.23.0":{"name":"@han-kyeon/claude-skills","version":"0.23.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.23.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"3f7ba36ce250fbb18be41ccddb6ae01644482edc","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.23.0.tgz","fileCount":120,"integrity":"sha512-EzNd8aq1z8cAkLBmsVsVo2VJHBz500AMHHnftZMpnwZYUllhEVbK8i9548/p34E+70GnySPRoWhGfuH9PD7ZoQ==","signatures":[{"sig":"MEYCIQCocLZJAK1r6oaQk3h7o4BYjnYnXzIt6GwJ80thyjeRaAIhAJ/z0y7dFcjSlnpqJRMP+RAHXeJjekZgb1GqiYleiE1k","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":830064},"engines":{"node":">=18"},"gitHead":"b9e6b0880bfb4398ef0eab17cabb3f0663ad4042","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.23.0_1779415103278_0.26128673950803316","host":"s3://npm-registry-packages-npm-production"}},"0.23.1":{"name":"@han-kyeon/claude-skills","version":"0.23.1","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.23.1","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"c26ae29e2df17c40d3046523502c5cf38923e71b","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.23.1.tgz","fileCount":120,"integrity":"sha512-fqMXDCQ6vFqG/PkyKDTuBOha5VqGMwkC+3eMgvCGUd5at83ula6qtfk1QAMZoLUS5Boelo+KoYYAjhPI24c6pg==","signatures":[{"sig":"MEYCIQCzYIEx/RbODv1ZnEWKFHS0WsficUxoAePW4w0G66aEJgIhAKrQRXNzUnp752HZNlH1hrzEeCl2McAvyO+HrchWeesx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":831755},"engines":{"node":">=18"},"gitHead":"5d389d13a50e160ee1141e12437d15e2f5a11b69","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.23.1_1779417235904_0.8867051848153904","host":"s3://npm-registry-packages-npm-production"}},"0.24.0":{"name":"@han-kyeon/claude-skills","version":"0.24.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.24.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"f3aa43146d3bd60ecd0df4804de69ba261e79920","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.24.0.tgz","fileCount":120,"integrity":"sha512-Vr0Km8Nf5qYj3gSR/+aKjY8dTwkG7L4VfNCD1jZQAOwQXlEreB2e4BzyHO7DjxyI54G9vxLws8myq9rdLP55Ig==","signatures":[{"sig":"MEQCIA/bNaeU8zz5cD5Z/YKRWyetVIfr6rd+aI4ZjsqbGskHAiB2zDnshcvI6xR9HJCGDdxc2HjG4yWWFyHHxki0y7CX8A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":833648},"engines":{"node":">=18"},"gitHead":"805fc08e46e33da94fa8cc6c863ae3ecf037052a","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.24.0_1780036456267_0.004910894193509652","host":"s3://npm-registry-packages-npm-production"}},"0.25.0":{"name":"@han-kyeon/claude-skills","version":"0.25.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.25.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"4cc22e20a9f4499c9d80b3699f783060bba0ba91","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.25.0.tgz","fileCount":121,"integrity":"sha512-YS7sz6EgwsYOvzTj5+RIBbZsuGnHxl/fiK/egDK3Kx+xkfvU4KPHbbMJLX0XvLsnvrzuUriPLnMZVccFx7A+zQ==","signatures":[{"sig":"MEUCIHbimlEXcXkTfD53v5avmD8whxvDqLx3DgP4OIzfX64NAiEA6T0dq/QU6C/ppMQGzDi3nIBQZddQaFvHdYZ47Y5g/RU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":841247},"engines":{"node":">=18"},"gitHead":"3bed0034f9a7d67982d33deeedee657e0187f529","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.25.0_1780040961929_0.19072487238148894","host":"s3://npm-registry-packages-npm-production"}},"0.25.1":{"name":"@han-kyeon/claude-skills","version":"0.25.1","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.25.1","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"772c029485b69fed3eaaa1efe77ed5eaace73263","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.25.1.tgz","fileCount":121,"integrity":"sha512-9bynXKUnAJ5s1664vdFrxTReGIq1TQFBGxsMGWwdAWhU/+ZgrCnWwNAX0VVvKsGTdZrAE1iuXoUo9lKibWWtQQ==","signatures":[{"sig":"MEYCIQCo9PCfxM4VuiXyeSIDVmeFztaA+vuo5Y3xQ1uNJUh9aQIhAOEimj3+VW0ich0pk+0LHSJRalh6uYhoct9jWn8gk5+s","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":841297},"engines":{"node":">=18"},"gitHead":"2238f09b6c32ff78be075ddf665cf97c21036900","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.25.1_1780275571304_0.703286415057669","host":"s3://npm-registry-packages-npm-production"}},"0.26.0":{"name":"@han-kyeon/claude-skills","version":"0.26.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.26.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"cb1e481b42e1a72682281fc3257d63139555495b","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.26.0.tgz","fileCount":122,"integrity":"sha512-0tB3xzrrrEprq5CTkoXDNZBJy3XiLP2RkT8ITgsZm9stJCHY+zCtz9PaAnrJdMiyi6s/czfFxc20FRfRxz26vg==","signatures":[{"sig":"MEUCIQDuphMbAbqluMMA0SBwH3cfN+iKvNwz6opDrghkUhvkkQIgLLY8RaCvIMS5otn91icn6+0R7ZunttcaZ1vJNDJlL6I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":849742},"engines":{"node":">=18"},"gitHead":"b3b018f3062cf7646931f1bf051c4f00250f2120","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.26.0_1780546406840_0.767551590030042","host":"s3://npm-registry-packages-npm-production"}},"0.27.0":{"name":"@han-kyeon/claude-skills","version":"0.27.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.27.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"52db35b62a6f21a33b19339cc3fb6cc55fa362ee","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.27.0.tgz","fileCount":122,"integrity":"sha512-t2j/j5AI8gUaDe4e47dWNVLgFvEjNVZ456gIzfrvOrBebTly/xqhBuK4owtnlrrSu2OmYkva1fDzhvzN5MxIsw==","signatures":[{"sig":"MEQCIGn1QytFP4f2Rf84iVJjYimM7fd9g9NUIg+m0oPGWGpoAiBR0WrFIOXBR8iohYHZ4wvIIEOroMHKQGpB0NalE7ZZhw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":853706},"engines":{"node":">=18"},"gitHead":"167add7114931b7b9970f152164c6cfe67bd7546","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.27.0_1780891194552_0.33828483863652403","host":"s3://npm-registry-packages-npm-production"}},"0.28.1":{"name":"@han-kyeon/claude-skills","version":"0.28.1","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.28.1","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"49d1e3ebf60e9545adb5e6e0c964566c3a9c95d9","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.28.1.tgz","fileCount":123,"integrity":"sha512-PT/CIBLJ0sAPO7i1GrS3AOHKLWbMeVUusaRgU8r0FU0Mexhq34OHYVdGmXcK4T2ESv+EAdGQGdQZEhyV3ZbCaw==","signatures":[{"sig":"MEQCIAmxfdigoW2IxlnzBIaVFG7gLAjEmcT8M3Vgx5AMw5v4AiBZmozKVR56bgl8khjVnrsTOPa2WS9bqltEQaUXdf7tAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":864765},"engines":{"node":">=18"},"gitHead":"8b0234bcdf1fa2ce55f5e2fe6c6a4b97b0a80727","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.28.1_1780906681099_0.6878503400617149","host":"s3://npm-registry-packages-npm-production"}},"0.28.2":{"name":"@han-kyeon/claude-skills","version":"0.28.2","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.28.2","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"c9e01478a0911586562b33e0d3e093c9ea10b449","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.28.2.tgz","fileCount":123,"integrity":"sha512-5TOSOuC8tF4U0zruZdEbGL1vOHy6tm9UvUT5l6WpeIcx9LQDrpbn1kPYvqZmUclmlDtV1ywzzr3a5LBlUmh97w==","signatures":[{"sig":"MEUCIGuDkGcX/24Tdwk5W8nIk6l2hoI/TheRGEJ1ci0uKA7fAiEAqe6RAAqm+NYYSxp5liHtArqya+pYBOrscCwA2NMT98c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":866913},"engines":{"node":">=18"},"gitHead":"c2a0c6d226d4d26ecfa63af3666e1962e3d23856","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.28.2_1780989038746_0.9645472150608334","host":"s3://npm-registry-packages-npm-production"}},"0.29.0":{"name":"@han-kyeon/claude-skills","version":"0.29.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.29.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"c1005ca0fc0734b0b3651ab67aa4add0d84a5432","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.29.0.tgz","fileCount":123,"integrity":"sha512-ATKGIIB9zM3Nz7COSKm2lOm4aoVXVpN5LFlAgYqdiNMBbLKKCefijfe2tCY/BegoEaUtDHTx2MF8YFqAy49u5g==","signatures":[{"sig":"MEQCIHGAkhGoJH6uYVLEJLLjlkwbVYTDvVObovO9H6rf6tb8AiA2xzwDd/JyIHAnQGIHVvL0yCaeqQ+8RfKbCPyyr4+8FA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":871227},"engines":{"node":">=18"},"gitHead":"591aa6968805dcbb8ebca7684fc64bd001fd6b7f","scripts":{"test":"node --test tests/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.29.0_1781056026491_0.33491214302993133","host":"s3://npm-registry-packages-npm-production"}},"0.30.0":{"name":"@han-kyeon/claude-skills","version":"0.30.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.30.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"a2a26cd1e436acc48441f0910ce57489a7c88a74","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.30.0.tgz","fileCount":126,"integrity":"sha512-Kem9AUlbMJHJwkoBQOwHQPZGnwTVOhot5HABPPhGvrflFwpPQO3/qiyin8u7Vd+h9Y+Aa16OTDV/GmHS/EToTA==","signatures":[{"sig":"MEUCIBKIyV0oXfidX8sXbkcX4OLERLWOaWFH1Y6AQU3KesblAiEA6z54umw8oUsrQ0xS0OmtwfTGVU7Jq8FezWAHdkD6NCw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":907660},"engines":{"node":">=18"},"gitHead":"591aa6968805dcbb8ebca7684fc64bd001fd6b7f","scripts":{"test":"node --test tests/*.test.js tests/contract/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js tests/contract/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.30.0_1781071162629_0.15402121145339298","host":"s3://npm-registry-packages-npm-production"}},"0.30.1":{"name":"@han-kyeon/claude-skills","version":"0.30.1","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.30.1","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"d534940e5e57e1b70879b5584883efa2c12acc1b","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.30.1.tgz","fileCount":126,"integrity":"sha512-U0Gtsq0+Xo9VBfpKs6Asrhafp2AymkVkKj+n8BVD6YvRT3zo11gBqxgjZqmTBCTtjJViJrx/gXhtKxysVdtzSA==","signatures":[{"sig":"MEQCIFMpWW1P/Dt2Gr59u98V8V8gpVdhvaRpWnNbEv3I+U0EAiAaZaQ6A9vU4MAiTgfnc0VJ5AA/K0PteJhgu0vL8Rq49w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":908291},"engines":{"node":">=18"},"gitHead":"10cb900eca6757cda2efa5c62a374fc0e1ec1caa","scripts":{"test":"node --test tests/*.test.js tests/contract/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js tests/contract/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.30.1_1781132589706_0.46845669868272277","host":"s3://npm-registry-packages-npm-production"}},"0.31.0":{"name":"@han-kyeon/claude-skills","version":"0.31.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.31.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"134615876cf220f202a1effffcbb429b66ca6009","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.31.0.tgz","fileCount":126,"integrity":"sha512-cKpTK9a4HCirwxwOwBgkDacHcg+rUI+wMZbwjwtTLrbaxLU2ZF+9XE0Ixfm+ViITDxMsOk6N8oO3KmEzlG6z1w==","signatures":[{"sig":"MEQCIEegrmXnlHxkELO6YxWHCnpMMROIqsowvPGtAIO1sLopAiAt/Kb/5jL3PMF0EPjMafpxqjvfKaLZvETpvgs+ncQK8A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":915882},"engines":{"node":">=18"},"gitHead":"c5a4113045d91efdb58c5c86ae6e4c357fc9f8ff","scripts":{"test":"node --test tests/*.test.js tests/contract/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js tests/contract/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.31.0_1781242403494_0.13698739835447848","host":"s3://npm-registry-packages-npm-production"}},"0.31.1":{"name":"@han-kyeon/claude-skills","version":"0.31.1","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.31.1","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"75b31eb75c439c9b19974f15436de8f8543a17db","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.31.1.tgz","fileCount":126,"integrity":"sha512-I8IL0LLDRjAYPJn8b1n8yT8WgIzY4E2agdnPIfGOeLaoYCFcw2g/iDRw/5ehekm1fDQiGYKRzDHY4AU37YHHUg==","signatures":[{"sig":"MEUCID/YD1ZIpxu14lKOpGCvDywWwN/HKnSjYNKiPz1JGmHMAiEA+GzoLXahXL7VKVyV39A4hQ7ecOqtbNvtO/o2qP6/Jlk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":920138},"engines":{"node":">=18"},"gitHead":"cc2c10a8d0d320b152ece8b0850a57ed38ecf548","scripts":{"test":"node --test tests/*.test.js tests/contract/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js tests/contract/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.31.1_1781247558611_0.526577087269708","host":"s3://npm-registry-packages-npm-production"}},"0.31.2":{"name":"@han-kyeon/claude-skills","version":"0.31.2","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.31.2","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"fb017ed6cb722367ff112399ea062b57209b55bb","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.31.2.tgz","fileCount":126,"integrity":"sha512-rHk4v1GaGZEq2/Iu7nhQXbEHonohukCB3rp9qqobMCinKOfsXLXqzhlTuL5IYoDYg5cN6xLEpLHTAJKZUsOpfg==","signatures":[{"sig":"MEQCIBHmouP89XMfOSJC8j5XYPmuxTt5vJ5IfZumxyIC7YQQAiA4QvELRVZHA+t4+2xla/2Lhvh6i9LqdCKUwDCLWSXeAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":921113},"engines":{"node":">=18"},"gitHead":"fa1b1c068355b459102454959a31d3c64e12a6a0","scripts":{"test":"node --test tests/*.test.js tests/contract/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js tests/contract/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.31.2_1781248077135_0.7116174219838678","host":"s3://npm-registry-packages-npm-production"}},"0.32.0":{"name":"@han-kyeon/claude-skills","version":"0.32.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.32.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"246a61ad4fc2babb1499f6d324a8e680b18fdc92","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.32.0.tgz","fileCount":128,"integrity":"sha512-twn4JCzNnMZicYXoje6iQ61y4kM538jGJgraWrDsp6ZjqKn9MSFJd/4Bq46ALBurSdD8Gf6OuouZzKu9MOz52Q==","signatures":[{"sig":"MEQCIHn+I7/qZUEeX2p2c128kjoogmIZ673fEtMh44d/nYrQAiAW0QZnK2gzpxFbxJ/us4nYUL0Ri5pV8sySOLBlSNxD7w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":946202},"engines":{"node":">=18"},"gitHead":"c91ff1f2770b7be343c2b33327e1d73bec41d5ed","scripts":{"test":"node --test tests/*.test.js tests/contract/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js tests/contract/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.32.0_1781681765447_0.3076179258635938","host":"s3://npm-registry-packages-npm-production"}},"0.32.1":{"name":"@han-kyeon/claude-skills","version":"0.32.1","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.32.1","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"b7622e9b4f529848b5009dd6539dc8514a25735b","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.32.1.tgz","fileCount":128,"integrity":"sha512-FPOcRCZ2Ce0HcUm7mBmZS+RclTFvwlRbVSJS35zBIARFQTgXfTHzhoKNq9GvMEsGxQSigUVyCzsNB07JXdg/JQ==","signatures":[{"sig":"MEUCIESt2QUQXm4Y32JsLsZ4IoDWjyEeW7iUq+HB2DVMxpYJAiEA2P1hZfwCDDnJm9PR9QRzLuEM3w8ualsiZlEIxQL3nmU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":946285},"engines":{"node":">=18"},"gitHead":"49e810d0170738a1bf6fe7f267994971218c365b","scripts":{"test":"node --test tests/*.test.js tests/contract/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js tests/contract/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.32.1_1781683181812_0.41470719587396965","host":"s3://npm-registry-packages-npm-production"}},"0.32.2":{"name":"@han-kyeon/claude-skills","version":"0.32.2","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.32.2","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"abd2e1ed24c16d726b9e0e009d22ee6fcde05452","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.32.2.tgz","fileCount":128,"integrity":"sha512-TZEmfnxRRMGBEiLos7FPQ0aHkCpfv8XqDXOK/q8SFBIkXBM1eCrmgnfBy4ZVMZ0j0/KxtfkBSUYAOITTGxCYwg==","signatures":[{"sig":"MEUCIHy0MT5pppKCCTI6Oflam96/TKmTcJdo9y0eBx2OuxRWAiEA73RJb7ceYxV4O0d2os/iNjGvATzsubaMvXhF2D+7S3A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":942438},"engines":{"node":">=18"},"gitHead":"79954223f920696922f866d44b628119404020bf","scripts":{"test":"node --test tests/*.test.js tests/contract/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js tests/contract/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.32.2_1782892281546_0.9394253937637376","host":"s3://npm-registry-packages-npm-production"}},"0.34.0":{"name":"@han-kyeon/claude-skills","version":"0.34.0","keywords":["claude","claude-code","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"author":{"url":"https://github.com/HanKyeon","name":"Keehyeon Han","email":"hgh21233@gmail.com"},"license":"MIT","_id":"@han-kyeon/claude-skills@0.34.0","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"bin":{"cfh":"bin/cli.js","claude-skills":"bin/cli.js"},"dist":{"shasum":"ea84ed9bee9dd2d8e9ca3b3e5b2f14f585a8f09e","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.34.0.tgz","fileCount":128,"integrity":"sha512-3F/a+nVgZY460GHy3cLvi9zOmI/nH/gOpwJ6teRkYOlGmohejGacHvhWKUj0O19pnIlEpRNOfFgiUGxC3Wpejw==","signatures":[{"sig":"MEQCIE3vdHZwm6iHEDEMpylu0cQHftA+Hrm2BCerBR5Yi03SAiAr5QdQQXrYrOYEEWMyqwXzgI6RPb6P6kGbbq8YObc1TQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":924786},"engines":{"node":">=18"},"gitHead":"1258adf6b8c54eefb6deee5c82b339322a2db7cd","scripts":{"test":"node --test tests/*.test.js tests/contract/*.test.js","smoke":"node bin/cli.js list --target ./.test-target","test:watch":"node --test --watch tests/*.test.js tests/contract/*.test.js"},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"repository":{"url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git","type":"git"},"_npmVersion":"11.7.0","description":"Portable Claude Code skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-skills_0.34.0_1785719415696_0.271059804207626","host":"s3://npm-registry-packages-npm-production"}},"0.35.0":{"name":"@han-kyeon/claude-skills","version":"0.35.0","description":"Portable Claude Code and Codex skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","publishConfig":{"access":"public"},"bin":{"claude-skills":"bin/cli.js","cfh":"bin/cli.js"},"engines":{"node":">=18"},"keywords":["claude","claude-code","codex","openai","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"license":"MIT","author":{"name":"Keehyeon Han","email":"hgh21233@gmail.com","url":"https://github.com/HanKyeon"},"repository":{"type":"git","url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git"},"scripts":{"test":"node --test tests/*.test.js tests/contract/*.test.js","test:watch":"node --test --watch tests/*.test.js tests/contract/*.test.js","smoke":"node bin/cli.js list --target ./.test-target"},"gitHead":"c61b1ddc7a8fa39dd44e94961b1e7db445725d98","_id":"@han-kyeon/claude-skills@0.35.0","bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","_nodeVersion":"22.22.2","_npmVersion":"11.7.0","dist":{"integrity":"sha512-iYf9YGW9zpJWBnRUMvC9fr1lRjy/GXk5kT7oihQHm1R4vVxFHcUm/XBwaKOzzBgB5uB+/E6cX7PJmx0jHkfglg==","shasum":"49bf61332a780eaa8af8324c0693290de2583857","tarball":"https://registry.npmjs.org/@han-kyeon/claude-skills/-/claude-skills-0.35.0.tgz","fileCount":148,"unpackedSize":1015369,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEjtLdq0LS/Vh4ZXJJT+rGy+VlMHCi5uC3IlvkPBhm30AiEAkjFEdG09ontqtFs9qkZyXr4AZk1M52Lo8dGr5Go9KTo="}]},"_npmUser":{"name":"han-kyeon","email":"hgh21233@gmail.com"},"directories":{},"maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/claude-skills_0.35.0_1785797158628_0.505281616085052"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-20T07:09:18.407Z","modified":"2026-08-03T22:45:59.072Z","0.2.0":"2026-04-20T07:09:18.606Z","0.3.0":"2026-04-21T00:31:54.372Z","0.4.0":"2026-04-21T04:07:24.525Z","0.5.0":"2026-04-21T04:32:14.280Z","0.6.0":"2026-04-21T07:50:35.192Z","0.7.0":"2026-04-21T23:34:38.064Z","0.8.0":"2026-04-22T06:34:48.724Z","0.9.0":"2026-04-29T04:43:15.910Z","0.10.0":"2026-05-07T02:23:31.837Z","0.12.0":"2026-05-07T03:04:08.345Z","0.13.0":"2026-05-07T03:16:57.196Z","0.15.0":"2026-05-14T00:11:01.003Z","0.15.1":"2026-05-14T00:54:55.652Z","0.15.2":"2026-05-14T01:51:12.604Z","0.16.2":"2026-05-14T08:33:59.615Z","0.16.3":"2026-05-14T08:55:39.434Z","0.18.0":"2026-05-14T21:51:01.331Z","0.18.1":"2026-05-14T23:05:19.518Z","0.18.2":"2026-05-14T23:11:36.242Z","0.19.0":"2026-05-15T00:04:21.820Z","0.19.1":"2026-05-15T00:56:18.692Z","0.19.2":"2026-05-15T02:29:18.596Z","0.19.3":"2026-05-17T23:22:19.993Z","0.20.0":"2026-05-19T07:34:19.654Z","0.21.0":"2026-05-19T22:59:32.297Z","0.22.0":"2026-05-20T00:03:49.794Z","0.22.1":"2026-05-20T02:36:48.259Z","0.23.0":"2026-05-22T01:58:23.437Z","0.23.1":"2026-05-22T02:33:56.097Z","0.24.0":"2026-05-29T06:34:16.477Z","0.25.0":"2026-05-29T07:49:22.091Z","0.25.1":"2026-06-01T00:59:31.456Z","0.26.0":"2026-06-04T04:13:27.016Z","0.27.0":"2026-06-08T03:59:54.800Z","0.28.1":"2026-06-08T08:18:01.316Z","0.28.2":"2026-06-09T07:10:38.934Z","0.29.0":"2026-06-10T01:47:06.680Z","0.30.0":"2026-06-10T05:59:22.799Z","0.30.1":"2026-06-10T23:03:09.852Z","0.31.0":"2026-06-12T05:33:23.693Z","0.31.1":"2026-06-12T06:59:18.785Z","0.31.2":"2026-06-12T07:07:57.378Z","0.32.0":"2026-06-17T07:36:05.649Z","0.32.1":"2026-06-17T07:59:41.978Z","0.32.2":"2026-07-01T07:51:21.714Z","0.34.0":"2026-08-03T01:10:15.873Z","0.35.0":"2026-08-03T22:45:58.910Z"},"bugs":{"url":"https://github.com/HanKyeon/han-kyeon_claude-skills/issues"},"author":{"name":"Keehyeon Han","email":"hgh21233@gmail.com","url":"https://github.com/HanKyeon"},"license":"MIT","homepage":"https://github.com/HanKyeon/han-kyeon_claude-skills#readme","keywords":["claude","claude-code","codex","openai","skills","slash-commands","subagents","frontend","backend","general-purpose","meta-skill","tdd","refactoring","cli","anthropic"],"repository":{"type":"git","url":"git+https://github.com/HanKyeon/han-kyeon_claude-skills.git"},"description":"Portable Claude Code and Codex skills, commands, and team-agent factory. FE-friendly with general-purpose meta-skills for authoring, team design, and evolution.","maintainers":[{"name":"han-kyeon","email":"hgh21233@gmail.com"}],"readme":"# @han-kyeon/claude-skills\n\n> A **framework** for authoring, installing, and orchestrating Claude Code and Codex skills, commands, and team agents. FE/non-FE friendly starter assets + general-purpose meta-skills (skill authoring, team factory, asset dispatcher, decision-tree grilling).\n\n## Claude Code + Codex support\n\nCFH now treats Claude Code and Codex as first-class hosts. Claude remains the compatibility default when no host can be detected or when legacy `--target` usage omits `--host`.\n\n| Capability | Claude Code | Codex |\n|---|---|---|\n| Runtime assets | `~/.claude/skills`, `~/.claude/commands` | `~/.agents/skills` |\n| Project skills | `./.claude/skills` | `./.agents/skills` |\n| Project agents | `./.claude/agents/*.md` | `./.codex/agents/*.toml` |\n| Packaged workflows | 8 skills + 21 commands | 28 native skills, including every command workflow |\n| Metadata | Claude frontmatter | `SKILL.md` + `agents/openai.yaml` |\n| Lifecycle CLI | install, update, list, remove, adopt, diff, check, trace, search, open, export/import, watch | Same |\n| Authoring CLI | `new`, `generate` | Same, with native TOML agents and Codex metadata |\n\nThe Codex adapter is semantic, not just a directory copy. It converts command arguments and invocation language, maps Claude subagent concepts to Codex collaboration, rewrites host paths, and supplies Codex-native workflow overrides where behavior differs. In particular, `$cfh-plan` and `$cfh-grilling` have native Codex workflows; `$cfh-clone` uses Codex `/fork` instead of reading Claude transcripts.\n\n```bash\ncfh install                  # auto-detect; installs both when both hosts exist\ncfh install --host codex     # install all Codex workflows to ~/.agents/skills\ncfh check --host codex       # validate native Codex skills and metadata\ncfh new skill my-flow --host codex\ncfh generate producer-reviewer --host codex\n```\n\nClaude transcript and hook observability (`cost`, `stats`, `sentry`, live eval execution) remains Claude-specific because those commands consume Claude Code's private transcript/settings formats. Asset authoring, installation, discovery, health checks, and lifecycle management are supported on both hosts.\n\n---\n\n## 5분 시작 (Quick Win)\n\n```bash\n# 1. 설치\nnpm install -g @han-kyeon/claude-skills\ncfh install                  # 설치된 Claude/Codex 환경을 감지해 알맞은 위치에 복사\ncfh list                     # 8 skills + 21 commands + mapping (→ /cfh-*) 확인\n```\n\n`cfh install`은 사용자 홈의 `~/.claude`, `~/.codex`, `~/.agents`를 확인합니다. Claude와 Codex가 모두 감지되면 양쪽에 설치하고, 아무 환경도 감지되지 않으면 기존 호환성을 위해 Claude에 설치합니다. `--target`만 지정한 기존 호출도 Claude 대상으로 유지됩니다.\n\n```bash\ncfh install                  # 자동 감지\ncfh install --host claude    # 자동 감지를 무시하고 Claude에만 설치\ncfh install --host codex     # ~/.agents/skills — command도 explicit-only skill로 변환\ncfh install --host all       # Claude + Codex 사용자 전역 위치에 모두 설치\n```\n\nCodex에서는 핵심 진입점을 `$cfh-plan`, `$cfh-grilling`으로 호출합니다. 기존 `/cfh-grill` 이름을 설치 필터에 사용해도 `$cfh-grilling` alias로 정규화됩니다.\n\n다음 workflow skill도 Codex에서 암시적 또는 `$skill-name` 명시 호출로 사용할 수 있습니다.\n\n- `$tdd-first` — React/Vue/FE intent TDD\n- `$tdd-general` — BE·CLI·library·순수 로직 TDD\n- `$debug-investigator` — 증거 기반 원인 조사\n- `$refactoring-strategy` — 행동 보존 리팩터링\n\n`cfh install --host codex`는 maintainer용 eval fixture를 제외한 runtime 자산만 설치하고, 각 command에는 실제로 참조하는 문서만 포함합니다.\n\nClaude Code 새 세션 시작 후 대화창에 차례로 입력:\n\n```\n(1) /cfh-guide overview\n   → 이 도구가 무엇을 하는지 30초 안에 파악\n\n(2) /cfh-trace \"이 코드 리팩터링하고 싶어\"\n   → 어떤 스킬이 자동 트리거되는지 점수로 미리보기\n\n(3) \"TDD로 src/utils/foo.ts 짜고 싶어\"\n   → tdd-first 자동 활성화. 5 Phase 진행\n\n(4) /cfh-make 팀 PR 응답 검증을 자동화하고 싶어\n   → asset-factory dispatcher — skill/command/team 분류\n\n(5) /cfh-plan 막연한 작업 — 어디부터 시작할지 모름\n   → 목표·성공 기준·제약 받고 접근법 카드 제안\n\n(6) /cfh-feedback tdd-first \"인터뷰 중 어색했던 점 짧게\"\n   → ~/.claude/.cfh-logs/에만 저장 (외부 전송 없음)\n```\n\n터미널에서 한 번 확인:\n\n```bash\ncfh stats --days 7           # cost + sentry + eval 통합 markdown 리포트\ncfh check                    # schema lint + skill 진단 모두\n```\n\n익숙해지면 `cfh-guide`·`cfh-trace`·`cfh-make`·`cfh-plan`·`cfh-feedback`·`cfh-grill` 6개 슬래시 커맨드만 기억해도 95% 커버됩니다.\n\n---\n\n## 무엇을 하는 라이브러리인가\n\n이 패키지는 Claude Code를 위한 **인프라 + 자산 묶음**입니다.\n\n- **인프라 (framework-agnostic)**: install·update·list·new·generate·adopt·diff·check·trace CLI · feedback·stats·dev eval · asset-factory dispatcher · skill-author·cfh-harness 메타-skill · grilling 결정 트리 인터뷰 · cfh-plan 작업 dispatcher\n- **자산 (FE/non-FE 명시 분기)**:\n  - **FE 전용**: `tdd-first` (RTL·MSW), `/cfh-tdd`·`/cfh-tc`·`/cfh-refactor`\n  - **non-FE 전반** (`-gen` suffix): `tdd-general` (AAA·table-driven), `/cfh-tdd-gen`·`/cfh-tc-gen`·`/cfh-refactor-gen` — BE/library/CLI/mobile/embedded/ML 모두 커버\n  - **stack-neutral**: `debug-investigator` (FE/BE 양쪽 키워드), `grilling`, `refactoring-strategy` (FE/BE 컨텍스트 분기)\n\n**한 문장**: 프로젝트별·팀별 Claude Code 사용 패턴을 자산화·관리·진화시키는 도구.\n\n---\n\n## 개발자 일상에서 — 어떻게 쓰이나\n\n기능 카탈로그가 아니라 *내가 일하는 흐름이 어떻게 달라지는지*. 4 가지 전형 상황:\n\n### 1. 모호한 요구사항 받았을 때 — `/cfh-plan`\n\n> \"결제 API에 쿠폰 검증 추가\" 같은 요구사항. 어디서 시작할지 막막.\n\n```\n/cfh-plan 결제 API에 쿠폰 검증 추가\n```\n\n- Phase 1: Q1~Q4 (목표·성공 기준·제약·긴급도) — Claude가 *바로 코드 안 짜고 멈춰서 묻기*\n- Phase 2: 접근법 카드 — 추천 + 이유 + 다른 옵션 + Project/Product 축\n- Phase 3: 적합한 sub-command로 위임 (tdd/tc/refactor/debug)\n\n→ 막연한 작업이 *3단계 명확한 계획*으로 변환. *Claude Code가 기본으로 안 하는 멈춤*.\n\n### 2. 설계 검증 필요할 때 — `/cfh-grill`\n\n> \"이 plan이 정말 맞는가?\" 머릿속만으로는 위험 신호 못 잡음.\n\n```\n/cfh-grill 쿠폰 검증 plan\n또는: /cfh-plan Phase 2 카드에서 (grill) 옵션 선택\n```\n\n- Phase 1: 결정 트리 enumerate — 도메인에 맞게 (FE: state 위치·에러 UX·캐싱·검증 위치 / BE: transaction boundary·idempotency·event ordering·error envelope) + *제외된 후보* 가시화 (자가검증)\n- Phase 2: 한 가지씩 *깊이* 인터뷰. 매 질문 추천 + 이유 + 대안. 한 번에 하나만.\n- Phase 3: 트리 walk 후 *의도 정렬*된 plan 완성\n\n→ mattpocock grilling의 *relentless* 정신 + 자가검증(slot ≠ purpose)·ambiguous 응답 대기 등 cfh 어댑테이션.\n\n### 3. 새 기능·새 모듈 시작 — `/cfh-tdd` / `/cfh-tdd-gen`\n\n> \"테스트 먼저 짜고 싶은데 의도 정리부터 막힘.\"\n\n```\n/cfh-tdd 쿠폰 검증 컴포넌트            # FE — RTL·MSW\n/cfh-tdd-gen 결제 API idempotency       # non-FE — Arrange-Act-Assert\n```\n\n- Phase 1: Intent Interview 6 질문 — Happy path / Edge / Error / Out of scope / 관찰 방법\n- Phase 2~5: 실패 테스트 → 구현 → 리팩터 + *AI 오버핏 방지 구조 디펜스*\n- stack에 따라 자동 분기 — FE/non-FE 도구·관용구 다름\n\n→ 테스트→구현 순서 강제. AI가 *테스트 통과만을 위한 hardcode*하는 패턴 차단.\n\n### 4. 레거시 리팩터링 — `/cfh-refactor` / `/cfh-refactor-gen`\n\n> \"기존 코드 정리하고 싶은데 어디부터·어디까지?\"\n\n```\n/cfh-refactor src/legacy/checkout       # FE — queryKey·tsc·RTL\n/cfh-refactor-gen internal/retry/policy.go            # Go\n/cfh-refactor-gen app/services/payment_service.py     # Python\n/cfh-refactor-gen com/payment/PaymentService.java     # JVM — Strangler Fig\n```\n\n- Step 1: Scope Narrowing 8 질문 + 추천+이유 패턴\n- Step 2~3: Project Profile + Blast Radius 분석 (string 참조·queryKey·DB schema·event topic 등)\n- Step 4: Safety Net (Characterization Test 자동 권장)\n- Step 5: Small PR 분할 (Vertical / Horizontal / Scaffolding / Adapter / Strangler Fig)\n\n→ \"한 PR에 너무 많이\"·\"안전망 없이 리팩터\" 같은 흔한 실패 패턴 차단.\n\n### 부가 시나리오\n\n- **PR 리뷰**: `/cfh-review develop` → 규모별 1~7 서브에이전트 병렬 → `REVIEW.md`\n- **원인 모를 버그**: 발화에 `500 에러` (server) · `hydration mismatch` (web) · `deadlock` · `OOM` · `asyncio race` 등 → `debug-investigator` 자동 → 5-Phase 증거 기반 조사\n- **자산 만들기**: `/cfh-new skill <name>` (skill + mirror command 자동) / `/cfh-make` (자산 종류 분류 dispatcher) / `/cfh-team` (멀티 에이전트 팀 + orchestrator skill)\n- **세션 인계**: `/cfh-progress` — `./PROGRESS.md`에 결정 로그·미해결·다음 단계 누적\n\n---\n\n## 자산 매트릭스 (한눈에)\n\n### FE 전용\n\n| 자산                                           | 목적                                              |\n| ---------------------------------------------- | ------------------------------------------------- |\n| `/cfh-tdd` + `tdd-first` skill                 | **새** React/Vue 컴포넌트 TDD (intent mode)       |\n| `/cfh-tc`                                      | **기존** FE 파일 테스트 추가·보강 (artifact mode) |\n| `/cfh-refactor` + `refactoring-strategy` skill | FE 리팩터 (queryKey·tsc·RTL)                      |\n\n### non-FE 전반 (`-gen` suffix)\n\n| 자산                                 | 목적                                                               |\n| ------------------------------------ | ------------------------------------------------------------------ |\n| `/cfh-tdd-gen` + `tdd-general` skill | **새** non-FE 자산 TDD (BE handler·CLI·library·mobile·embedded·ML) |\n| `/cfh-tc-gen`                        | **기존** non-FE 파일 테스트 추가·보강                              |\n| `/cfh-refactor-gen`                  | non-FE 리팩터 (DB schema·migration·observability·Strangler Fig)    |\n\n### 메타 자산 — 자산 생성·orchestration\n\n| 자산                                  | 목적                                                             |\n| ------------------------------------- | ---------------------------------------------------------------- |\n| `/cfh-new` + `skill-author` skill     | skill·command·agent 스캐폴드 (skill 시 mirror command 자동 생성) |\n| `/cfh-make` + `asset-factory` skill   | 자산 종류 모를 때 3 질문 분류 dispatcher                         |\n| `/cfh-team` + `cfh-harness` skill | 에이전트 팀 설계 (7 패턴 중 1)                                   |\n\n### 인터뷰·인사이트\n\n| 자산                                      | 목적                                               |\n| ----------------------------------------- | -------------------------------------------------- |\n| `/cfh-debug` + `debug-investigator` skill | 5-Phase 증거 기반 디버깅 (FE/BE 양쪽 키워드)       |\n| `/cfh-review`                             | PR 7-agent 리뷰 (stack-aware)                      |\n| `/cfh-grill` + `grilling` skill           | 결정 트리 깊이 파기 인터뷰 (mattpocock 어댑테이션) |\n| `/cfh-plan`                               | 작업 dispatcher (목표→접근법 카드→실행/위임)       |\n\n### 워크플로 보조\n\n| 자산            | 목적                                                       |\n| --------------- | ---------------------------------------------------------- |\n| `/cfh-progress` | 프로젝트 진행 노트 — `./PROGRESS.md` 누적                  |\n| `/cfh-retro`    | 작업 회고 영구 기록 — `~/.claude/.cfh-logs/retros/`        |\n| `/cfh-feedback` | 스킬 피드백 — `~/.claude/.cfh-logs/<skill>.jsonl` (옵트인) |\n| `/cfh-guide`    | 사용 가이드 출력                                           |\n| `/cfh-trace`    | 발화→스킬 매칭 점수 미리보기                               |\n| `/cfh-clone`    | CFH-aware 세션 꼬리 클론 — 확정 의도(confirm 카드)·진행 중 워크플로 보존 (`cfh clone`) |\n\n설치된 자산의 자세한 description·트리거 키워드는 `cfh list`로 확인 (각 skill의 description은 frontmatter에서 출력).\n\n---\n\n## 설치\n\n```bash\n# 글로벌 (기본 — 모든 프로젝트에서 사용)\nnpm install -g @han-kyeon/claude-skills\ncfh install\n\n# 프로젝트 로컬 (팀 공유, git에 포함)\ncd my-project\ncfh install --target ./.claude\n\n# 일부만\ncfh install refactoring-strategy\ncfh install --only skills\ncfh install --dry-run            # 미리보기\n```\n\n확인:\n\n```bash\ncfh list                         # 글로벌 + 프로젝트 + mapping 컬럼\ncfh list --global                # 글로벌만\ncfh list --project               # 프로젝트만\n```\n\n업데이트·제거:\n\n```bash\ncfh update                       # 패키지 자산 갱신 (user-modified는 자동 skip)\ncfh update --force               # 사용자 수정분 덮어쓰기 (warning 후 진행)\ncfh remove tdd-first             # 제거\ncfh adopt tdd-first              # managed → user-authored 전환 (cfh update 보호)\n```\n\n> **dev 워크플로**: 패키지 소스에서 직접 작업하려면 `npm link` 사용. (참고: `cfh install --link` flag는 0.16.x에서 제거됨 — dev iteration은 `npm link`로 통일.)\n\n---\n\n## 표준 사용법\n\n### 새 기능 시작 — TDD\n\n```\n\"TDD로 src/features/coupon/CouponInput.tsx 만들어줘\"\n→ tdd-first 자동 활성화 → Phase 1 Intent Interview\n\n또는 명시 호출:\n/cfh-tdd 쿠폰 검증 컴포넌트\n```\n\n백엔드·라이브러리·CLI는:\n\n```\n\"FastAPI 엔드포인트 TDD로\"\n→ tdd-general 자동 활성화\n\n또는:\n/cfh-tdd-gen 결제 API idempotency key 적용\n```\n\n### 기존 코드 테스트 보강\n\n```\n/cfh-tc src/components/UserList.tsx       # FE\n/cfh-tc-gen internal/retry/policy.go      # non-FE\n```\n\n> `/cfh-tdd`·`/cfh-tc`·`/cfh-tdd-gen`·`/cfh-tc-gen`은 **stack × mode 2×2 매트릭스**. 새 자산은 `tdd` 계열, 기존 보강은 `tc` 계열. 잘못 진입하면 deprecation warning + 대안 안내.\n\n### PR 리뷰\n\n```\n/cfh-review develop\n→ Tiny/Small/Medium/Large 분류 → 1~7 서브에이전트 병렬 → REVIEW.md\n```\n\n### 작업 dispatcher\n\n```\n/cfh-plan 결제 페이지에 쿠폰 검증 추가\n→ Phase 1 Q1~Q4 (목표·성공·제약·긴급도) → Phase 2 접근법 카드 → Phase 3 실행\n```\n\n### 디버깅\n\n```\n\"500 에러 — 원인 모르겠어\"            # BE\n\"hydration mismatch 어디서 깨졌는지\"  # FE\n→ debug-investigator 자동 활성화 → 5-Phase Evidence-driven\n```\n\n### 자산 생성\n\n```\n/cfh-new skill my-skill                  # skill + mirror command 자동 생성\n/cfh-new skill my-skill --no-mirror      # mirror 안 만들기\n/cfh-make 우리 팀 PR 응답 자동화          # 자산 종류 모를 때 분류기\n/cfh-team 결제 모듈 멀티 에이전트 팀       # 7 패턴 중 1 선택\n```\n\n### 결정 깊이 파기\n\n```\n/cfh-grill 쿠폰 검증 plan\n→ 결정 트리 enumerate → 한 가지씩 인터뷰 (mattpocock relentless 정신)\n```\n\n---\n\n## Soft routing suggestion (0.18.0)\n\n호출한 명령은 **default 그대로 진행**, opposite stack 신호 강할 때만 **bold + 💡로 대안 제안** (강제 X — yes/switch/explain 선택):\n\n```\n입력: /cfh-tdd \"결제 API 핸들러 idempotency key\"\n\n   📌 이대로 진행: tdd-first (FE 컴포넌트 TDD)\n   💡 **더 적합해 보이는 대안 — /cfh-tdd-gen**\n        신호: [inferred] 'API 핸들러' BE 키워드 / [inferred] 'idempotency' BE 패턴\n   진행: yes / switch / explain\n```\n\n대상 페어: `/cfh-tdd ↔ /cfh-tdd-gen`, `/cfh-tc ↔ /cfh-tc-gen`, `/cfh-refactor ↔ /cfh-refactor-gen`. `/cfh-plan` Phase 2 approach card에는 _stack signal_ 추론 섹션 포함.\n\n**휴리스틱 핵심**:\n\n- FE 신호: `.tsx`·`.jsx`·`.vue` 확장자, `React`·`Vue`·`Next.js` 라이브러리, `hydration`·`INP`·`CLS` 키워드\n- non-FE 신호: `.go`·`.py`·`.rs`·`.java`·`.kt`·`.swift` 확장자, `handler`·`endpoint`·`migration`·`idempotency`·`p95 latency` 키워드\n- 결정 룰: opposite stack score ≥ current + 2 → suggestion 출력 (둘 다 약하면 출력 안 함, 정책 § 0.15.2 자가검증)\n\n설치 후 더 자세한 휴리스틱·confidence marker·explain mode는 `~/.claude/commands/references/soft-routing.md`에서 확인.\n\n---\n\n## 자주 하는 질문\n\n### Q. 스킬이 자동 트리거되지 않습니다\n\n`cfh trace \"<발화>\"`로 매칭 점수 확인. description 키워드와 발화가 충분히 겹치는지 확인. 명시 호출(`/cfh-foo`)은 항상 자동 trigger를 이깁니다.\n\n### Q. 두 skill이 같은 발화에 충돌해요\n\n`cfh check skills --mapping`로 매핑 확인. trigger-overlap 경고가 있으면 description에 anti-trigger (\"Do NOT trigger when ...\") 추가.\n\n### Q. cfh-tdd vs cfh-tdd-gen 어느 쪽을 쓰나요\n\n- FE 컴포넌트(React/Vue) → `cfh-tdd`\n- BE 핸들러·라이브러리·CLI·mobile·embedded·ML → `cfh-tdd-gen`\n- 모호하면 Track 9 soft suggestion이 안내 (0.18.0+)\n\n### Q. /cfh-tc로 새 컴포넌트 시작하면?\n\nTrack 8 (0.17.0)부터 `/cfh-tc`·`/cfh-tc-gen`은 **기존 파일 대상 한정**. 새 자산은 `/cfh-tdd`·`/cfh-tdd-gen`. 0.17.x 동안 deprecation warning + 정상 작동. 향후 major에서 자동 차단.\n\n### Q. cfh check --strict 가 unknown field 에러를 뱉어요\n\n1.0급부터 default가 strict — SKILL.md frontmatter의 unknown field가 ERROR. 옵션:\n\n- frontmatter에서 해당 필드 제거\n- `schemas/skill-frontmatter.json` 에 필드 추가 후 PR\n- `cfh check schema --legacy` — 0.x style warn-only\n\n### Q. cfh install --link 가 안 돼요\n\n1.0급 polish에서 제거됨. dev 워크플로는 `npm link` 권장 (패키지 디렉터리에서 `npm link`, 사용 프로젝트에서 `npm link @han-kyeon/claude-skills`).\n\n### Q. 자동화 스크립트 수정해야 하나요\n\n알 됩니다. 구 명령(`cfh evolve`·`cfh log`·`cfh dashboard`·`cfh eval`·`cfh validate`·`cfh doctor` 등)은 한 사이클 동안 alias로 작동 + stderr deprecation warning. 시간 여유 있을 때 신 명령으로 갱신.\n\n### Q. PROGRESS.md가 자동 생성됐어요. 안 생기게 하려면\n\n자동 생성은 절대 안 됩니다 — `/cfh-progress init`로 사용자 명시 호출만 생성. 자동 생성됐다면 다른 누군가가 호출한 것. 삭제 후 `init` 안 부르면 됩니다.\n\n### Q. 사용자가 작성한 스킬이 cfh update에 덮어써질까 봐 걱정됩니다\n\nuser-authored (manifest 없음) 또는 user-modified는 default skip됩니다. `--force`로 덮어쓰기 시 warning 출력 + 명시 진행. 보호 강화하려면 `cfh adopt <name>`으로 user-authored 전환.\n\n### Q. CI에 통합하려면\n\n```yaml\n- run: npm install -g @han-kyeon/claude-skills\n- run: cfh install\n- run: cfh check --strict # schema + 진단 모두\n- run: cfh dev eval --executor claude --report junit --output junit.xml\n- uses: dorny/test-reporter@v1\n  with: { path: junit.xml }\n```\n\n`cfh check --legacy` 옵션은 0.x style 호환 (1.0급 strict 우회). 자세한 명령은 `cfh --help`.\n\n### Q. Monorepo·프로젝트별 다른 스킬 쓰기\n\n```bash\ncfh install --target ./packages/web/.claude       # 패키지별\ncfh new skill my-team-skill --project             # 프로젝트 로컬\ncfh list --project                                # 프로젝트 자산만\n```\n\n프로젝트 로컬(`./.claude/`)이 글로벌(`~/.claude/`)을 가립니다. `cfh check skills` 가 shadowing 감지.\n\n---\n\n## Migration Guide (0.x → 0.19.x)\n\n0.16.x~0.19.x cycle은 명령 이름·subcommand 구조 정리 + skill 디렉터리 명명 정리가 핵심. **모든 구 명령은 한 사이클 동안 alias 유지** — 자동화 스크립트는 즉시 수정 불필요. 1.0급 안정성 도달 후 사용자 판단으로 1.0 promotion 시점에 alias 제거 단계 시작.\n\n### Skill 디렉터리 rename (0.19.0)\n\n원본 패키지(mattpocock·revfactory)와의 글로벌 네임스페이스 충돌 회피를 위해 2개 skill 디렉터리 rename:\n\n| Before (≤ 0.18.x) | After (0.19+) |\n|---|---|\n| `~/.claude/skills/grill-me/` | `~/.claude/skills/grilling/` |\n| `~/.claude/skills/harness-factory/` | `~/.claude/skills/cfh-harness/` |\n\n**사용자 영향**:\n\n| 측면 | 영향 |\n|---|---|\n| mirror command (`/cfh-grill`·`/cfh-team`) | **변화 없음** |\n| 자동 trigger 발화 (description 키워드) | **변화 없음** |\n| `cfh trace`·`cfh list` 출력의 skill 이름 | 변경 (자동화 스크립트가 `grill-me`·`harness-factory` 문자열 의존하면 영향) |\n\n**0.18.x → 0.19.x 마이그레이션** (글로벌 설치 사용자):\n\n```bash\n# 1. 새 디렉터리 설치\ncfh install --force\n\n# 2. 구 디렉터리 manual 제거 (cfh install이 자동 제거 안 함)\nrm -rf ~/.claude/skills/grill-me ~/.claude/skills/harness-factory\n\n# 3. 확인\ncfh list                       # grilling·cfh-harness 표시 + 구 이름 없음\ncfh trace \"grill 좀 해줘\"       # grilling 매칭 확인\n```\n\n프로젝트 로컬 설치(`./.claude/`) 사용자도 동일 — `./.claude/skills/grill-me/`·`./.claude/skills/harness-factory/`를 manual 제거.\n\n### 이름 변경 요약\n\n```\n# Feedback / evolution\ncfh evolve [skill]              →  cfh feedback [skill]\ncfh log <skill>                 →  cfh feedback log <skill>\ncfh log --enable                →  cfh feedback enable\n\n# Observability\ncfh dashboard                   →  cfh stats\ncfh cost                        →  cfh stats cost (cost는 alias만 유지)\ncfh sentry --live               →  cfh sentry live\ncfh sentry --install-hook       →  cfh sentry hook install\n\n# Maintainer\ncfh eval                        →  cfh dev eval\n\n# Health checks\ncfh validate                    →  cfh check schema\ncfh doctor                      →  cfh check skills\n\n# Removed\ncfh install --link              →  removed (dev: npm link)\n```\n\n### TDD/TC mode 분기 (0.17.0 Track 8)\n\n`/cfh-tc`·`/cfh-tc-gen`은 **기존 파일 대상**으로 한정. 새 컴포넌트·모듈은 `/cfh-tdd`·`/cfh-tdd-gen`:\n\n| 기존 발화 (≤ 0.16.x)              | 새 발화 (0.17+)          | 자동 라우팅  |\n| --------------------------------- | ------------------------ | ------------ |\n| `/cfh-tc 컴포넌트 새로 짤건데`    | `/cfh-tdd 컴포넌트 새로` | tdd-first    |\n| `/cfh-tdd UserList.tsx 보강`      | `/cfh-tc UserList.tsx`   | (cfh-tc)     |\n| `/cfh-tc-gen 새 API 핸들러`       | `/cfh-tdd-gen 새 API`    | tdd-general  |\n| `/cfh-tdd-gen 기존 retry.go 보강` | `/cfh-tc-gen 기존 retry` | (cfh-tc-gen) |\n\n**Stack × Mode 매트릭스**:\n\n|            | **intent** (새로) | **artifact** (기존) |\n| ---------- | ----------------- | ------------------- |\n| **FE**     | `/cfh-tdd`        | `/cfh-tc`           |\n| **non-FE** | `/cfh-tdd-gen`    | `/cfh-tc-gen`       |\n\n### Schema 검증 강화\n\n1.0급부터 `cfh check schema`(구 `cfh validate`)는 default가 strict — SKILL.md frontmatter의 unknown field를 ERROR로 보고. 0.x 동작이 필요하면 `--legacy` flag.\n\n### Deprecation 사이클\n\n**Deprecation 정책 요약**:\n\n- 0.16.x ~ 0.19.x: 구 명령·플래그·발화 작동 + stderr deprecation warning\n- 1.0 promotion 후 한 사이클: alias 일괄 제거 (사용자 판단으로 시점 결정)\n- BREAKING 차단 안 함 — 한 사이클 안에 자동화 스크립트 migration 권장\n- 새 명령으로 갱신 시 *자기 환경*에서 `cfh check --strict`로 자동 검증 가능\n\n### 적용 사이클 (Track 7·8·9)\n\n| 마일스톤    | 범위                                                  | 상태                   |\n| ----------- | ----------------------------------------------------- | ---------------------- |\n| **0.16.3**  | Track 7 — audit-driven polish 8 항목                  | ✅ release             |\n| **0.17.0**  | Track 8 — TDD/TC mode 분기 (intent×artifact 매트릭스) | ✅ release             |\n| **0.18.0**  | Track 9 — Soft routing suggestion (bold 강조, 강제 X) | ✅ release             |\n| **0.19.0**  | Skill 디렉터리 rename (`grilling`·`cfh-harness`) — 네임스페이스 충돌 회피 | ✅ release             |\n| **0.20.0**  | Final Intent Confirm — 작업 실행 직전 답변 합산·모호 발화·충돌 자가검증 (6 자산) | ✅ release             |\n| **0.21.0**  | Agent Communication Mode — subagent vs teams 명시 선택 (`cfh-harness`·`cfh-team`·`cfh-review`) | ✅ release             |\n| **0.22.0**  | Team Suggestion + Adversary 패턴 — 6 자산 조건부 안내 (`why teams` lazy load) + 7번째 패턴 신설 | ✅ release             |\n| **0.23.0**  | PROGRESS.md Audit — 6축 체크리스트 + Adversary side-effect (Tier 1·2, `/cfh-progress-audit` 신설) | ✅ release             |\n| **0.23.1**  | cfh-plan Phase 2.5에 side-effect 게이트 (7 영역 카탈로그 자가 확인 + 조건부 Adversary hint) | ✅ release             |\n| **0.24.0**  | cfh-plan Q5 선행 의존성(inbound, side-effect와 대칭) + Phase 2.5 강제 명시 + 인라인 version·Track 표기 정리 | ✅ release             |\n| **0.25.0**  | `/cfh-ask` 실험 command — 설명 텍스트 + AskUserQuestion 선택, 워크플로 중간 호출 지원(검증 후 plan/grill 내장 예정) + cfh-progress-audit 등록 | ✅ release             |\n| **0.26.0**  | sdk-ai-workflow 도입 — ① 정형 데이터 크로스체크(`[guessed]`→`[verified]`, cfh-plan·refactor(-gen)·grill) ② cfh-review 모델 차등(권장) | ✅ release             |\n| **0.27.0**  | refactoring-strategy 방향 제안 — 대안 탐색 + 정량 비교 카탈로그(영향범위·복잡도·중복제거·결합도·타입안전성·번들·성능·테스트, 조건부·추정/실측) + 트레이드오프·현행 유지 동등 선택지 | ✅ release             |\n| **0.28.0**  | test-quality 단일 출처 — 리트머스·피라미드·부작용 테스트·의도 명시·AAA·시간고정 (tdd-first·tdd-general·cfh-tc(-gen) 공유, anti-overfit과 역할 분리, FE/BE 분기) | ✅ release             |\n| **0.28.1**  | cfh-plan 직접 실행 경로에 품질 도구 연결 (crosscheck·test-quality) — 위임/직접 *모든 경로*에서 코드 품질 측정 전이 도달 | ✅ release             |\n| **0.28.2**  | test-quality에 테스트 생략 규칙 — 커버리지=진단(상한/하한), 생략엔 사유 카탈로그(자명·타입·시각·라이브러리·싼계층), 변경 행동 테스트함/생략 분류로 누락 가시화 | ✅ release             |\n| **0.29.0**  | FEEDBACK §2·§3 — TDD 인터뷰 Draft-and-Confirm fast path(신호 충분 시 채워진 초안 교정, 약하면 순차) + 의도 헤더 기본 작성(테스트 파일 일부 · FE=JSDoc / non-FE=docstring 등 관용 주석) + review·refactor(-gen)·tc(-gen) \"있으면 활용\" | ✅ release             |\n| **0.30.0**  | `/cfh-clone`·`cfh clone(-cut)` — CFH-aware 세션 클론(confirm sentinel·cfh 명령 앵커 중 이른 쪽부터 꼬리 보존, 앵커 없으면 절반 컷 폴백) + final-confirm sentinel + cfh-review 실패 예산(finding 인용 Read 검증·실패 축 가시화 — 각 1회 bounded) | ✅ release             |\n| **0.31.0**  | confidence 마커 신호등 병기 — 출력 카드에서 `🟢 [verified]`·`🟡 [inferred]`·`🔴 [guessed]` (emoji+공백, prose·백틱 제외, bracket 토큰은 기계 기준 유지, 🟢🟡🔴 confidence 전용 예약) + cfh-clone 절단 지점 선택(확정의도/워크플로/절반 후보를 trim%와 함께 제시, `--anchor`로 실행 — 타이핑 선택이라 카드 생존+선택 기록이 새 세션에 남음. 같은 turn 실행 시 카드 잘리는 버그 수정) | ✅ release             |\n| **0.34.0**  | Claude/Codex 멀티 호스트 설치·lifecycle·authoring, Codex 네이티브 28개 스킬, FE/BE 테스트 품질 기준 분리 | ✅ release |\n| **0.31.x+** | FEEDBACK §1 — Phase 0 self-sample 측정 (신규 동결)    | 측정 우선              |\n| **1.0.0**   | (사용자 판단 — 자동 게이트 아님)                      | 안정성 체크리스트 검토 |\n\n각 마일스톤의 변경 내역은 `cfh list`로 설치된 자산을 확인 (각 자산의 `managed@<version>` 표시 + frontmatter description).\n\n---\n\n## 라이선스\n\nMIT\n","readmeFilename":"README.md"}