{"_id":"@dzhechkov/skills-12factor","_rev":"11-ca9e85738614c8db085c8ecb3556064e","name":"@dzhechkov/skills-12factor","dist-tags":{"latest":"0.1.14"},"versions":{"0.1.1":{"name":"@dzhechkov/skills-12factor","version":"0.1.1","keywords":["claude-code","skills","12factor","twelve-factor","cloud-native","dz-harness"],"license":"CC-BY-4.0","_id":"@dzhechkov/skills-12factor@0.1.1","maintainers":[{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"}],"homepage":"https://github.com/djd1m/dz-harness-hub#readme","bugs":{"url":"https://github.com/djd1m/dz-harness-hub/issues"},"dist":{"shasum":"49ca7faed763a91c510fa6d790af3c79ed1e8b2a","tarball":"https://registry.npmjs.org/@dzhechkov/skills-12factor/-/skills-12factor-0.1.1.tgz","fileCount":41,"integrity":"sha512-ah1dYZSnahAhM4QNlGOo45nDenXiJ1f+Ddr9wzfYAFNtcY01V0JCoRi+SuAGxneyvABEa3hEmEcVXu7aDl7ApQ==","signatures":[{"sig":"MEUCIQCIU8n0vEihatwPIpjBBsa68dQ9NohpnhQnEuQtKnRijgIgQzYd1LIz/Uklzc4KDykMnnC/uD7oqaTnm7ThheeJ7xk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":210701},"_from":"file:dzhechkov-skills-12factor-0.1.1.tgz","_npmUser":{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"},"_resolved":"/tmp/8f734ef24abc1736d9234ff28f35aeef/dzhechkov-skills-12factor-0.1.1.tgz","_integrity":"sha512-ah1dYZSnahAhM4QNlGOo45nDenXiJ1f+Ddr9wzfYAFNtcY01V0JCoRi+SuAGxneyvABEa3hEmEcVXu7aDl7ApQ==","repository":{"url":"git+https://github.com/djd1m/dz-harness-hub.git","type":"git","directory":"packages/@dzhechkov/skills-12factor"},"_npmVersion":"10.9.4","description":"12 decision-moment skills distilled from The Twelve-Factor App (CC BY 4.0) — one per factor. Makes AI coders apply 12-factor decisions (config-in-env, stateless processes, port binding, dev-prod parity, …). Generated by @dzhechkov/skills-book-digitizer; d","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills-12factor_0.1.1_1783151390637_0.251966994432236","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@dzhechkov/skills-12factor","version":"0.1.3","keywords":["claude-code","skills","12factor","twelve-factor","cloud-native","dz-harness"],"license":"CC-BY-4.0","_id":"@dzhechkov/skills-12factor@0.1.3","maintainers":[{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"}],"homepage":"https://github.com/djd1m/dz-harness-hub#readme","bugs":{"url":"https://github.com/djd1m/dz-harness-hub/issues"},"dist":{"shasum":"c22c04a8e0cb2e65b41140c8eb94a19e1e431597","tarball":"https://registry.npmjs.org/@dzhechkov/skills-12factor/-/skills-12factor-0.1.3.tgz","fileCount":41,"integrity":"sha512-fQSzhfjjorjoRApyrTzPde/LwjMZuJi8ghxdN5TybWXPbZk6bLoUfcrnJ57Z61XKFh2C7UNOARbnwKI8B7DtkA==","signatures":[{"sig":"MEUCIB1kSOM99IRfZE0zLEQVA6zG1mHhd9G1rQpevoZktB3NAiEA7+zZ3U9tBoJTw8cr+4tOfhljJCQ6rAxW8gAdVhyLUlY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":215137},"_from":"file:dzhechkov-skills-12factor-0.1.3.tgz","_npmUser":{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"},"_resolved":"/tmp/db149881a0770fae22e6478c60ab12b0/dzhechkov-skills-12factor-0.1.3.tgz","_integrity":"sha512-fQSzhfjjorjoRApyrTzPde/LwjMZuJi8ghxdN5TybWXPbZk6bLoUfcrnJ57Z61XKFh2C7UNOARbnwKI8B7DtkA==","repository":{"url":"git+https://github.com/djd1m/dz-harness-hub.git","type":"git","directory":"packages/@dzhechkov/skills-12factor"},"_npmVersion":"10.9.4","description":"12 decision-moment skills distilled from The Twelve-Factor App (CC BY 4.0) — one per factor. Makes AI coders apply 12-factor decisions (config-in-env, stateless processes, port binding, dev-prod parity, …). Generated by @dzhechkov/skills-book-digitizer; d","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills-12factor_0.1.3_1783152207513_0.8249687264963297","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@dzhechkov/skills-12factor","version":"0.1.5","keywords":["claude-code","skills","12factor","twelve-factor","cloud-native","dz-harness"],"license":"CC-BY-4.0","_id":"@dzhechkov/skills-12factor@0.1.5","maintainers":[{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"}],"homepage":"https://github.com/djd1m/dz-harness-hub#readme","bugs":{"url":"https://github.com/djd1m/dz-harness-hub/issues"},"dist":{"shasum":"7ebf43d3f8e528a5a507d6600dd7d1a132380d6b","tarball":"https://registry.npmjs.org/@dzhechkov/skills-12factor/-/skills-12factor-0.1.5.tgz","fileCount":41,"integrity":"sha512-Mg3UUjHAg526c5N7kghNI2jtJOgs5MxAY3kDBIhFeGV7+IVcyZBOm2pdqeVXNPBCxye9zXZ5NrugY9rwtr/7+g==","signatures":[{"sig":"MEUCIEa7RvI6118utPzyktcHg2yigjKWc5elvakHxaLxewViAiEA4jFoAjkzV7ckfMgHW1QKyiIvCS1XSSoumjBpcOVk85U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":215040},"_from":"file:dzhechkov-skills-12factor-0.1.5.tgz","_npmUser":{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"},"_resolved":"/tmp/fe5b14b38d9f4c8b5b149141703fcec2/dzhechkov-skills-12factor-0.1.5.tgz","_integrity":"sha512-Mg3UUjHAg526c5N7kghNI2jtJOgs5MxAY3kDBIhFeGV7+IVcyZBOm2pdqeVXNPBCxye9zXZ5NrugY9rwtr/7+g==","repository":{"url":"git+https://github.com/djd1m/dz-harness-hub.git","type":"git","directory":"packages/@dzhechkov/skills-12factor"},"_npmVersion":"10.9.4","description":"12 decision-moment skills distilled from The Twelve-Factor App (CC BY 4.0) — one per factor. Makes AI coders apply 12-factor decisions (config-in-env, stateless processes, port binding, dev-prod parity, …). Generated by @dzhechkov/skills-book-digitizer; d","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills-12factor_0.1.5_1783153134902_0.945034252589041","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@dzhechkov/skills-12factor","version":"0.1.7","keywords":["claude-code","skills","12factor","twelve-factor","cloud-native","dz-harness"],"license":"CC-BY-4.0","_id":"@dzhechkov/skills-12factor@0.1.7","maintainers":[{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"}],"homepage":"https://github.com/djd1m/dz-harness-hub#readme","bugs":{"url":"https://github.com/djd1m/dz-harness-hub/issues"},"dist":{"shasum":"6b0b28820b2f6a673d33c561d23942d282c6ae48","tarball":"https://registry.npmjs.org/@dzhechkov/skills-12factor/-/skills-12factor-0.1.7.tgz","fileCount":41,"integrity":"sha512-jwwL1cjX6ea8P/Muf802e+r6+7CumNN+8f3tXHqjjPXUbVDDiEH+VrFG6omCHN7vrI2uAjYI8DMly/SfsSFdhQ==","signatures":[{"sig":"MEYCIQD889ob7BbK2Q3TDQBRHFv7fLsqihV9bt/nM04lRAEvigIhAMso8pZ78gRpJ7SrbQy1qGE1+C3Ak395YbNKeG072gEv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":215876},"_from":"file:dzhechkov-skills-12factor-0.1.7.tgz","_npmUser":{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"},"_resolved":"/tmp/ec3e6bbc5846241d8ded379a9a939b76/dzhechkov-skills-12factor-0.1.7.tgz","_integrity":"sha512-jwwL1cjX6ea8P/Muf802e+r6+7CumNN+8f3tXHqjjPXUbVDDiEH+VrFG6omCHN7vrI2uAjYI8DMly/SfsSFdhQ==","repository":{"url":"git+https://github.com/djd1m/dz-harness-hub.git","type":"git","directory":"packages/@dzhechkov/skills-12factor"},"_npmVersion":"10.9.4","description":"12 decision-moment skills distilled from The Twelve-Factor App (CC BY 4.0) — one per factor. Makes AI coders apply 12-factor decisions (config-in-env, stateless processes, port binding, dev-prod parity, …). Generated by @dzhechkov/skills-book-digitizer; d","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills-12factor_0.1.7_1783162319949_0.7311130313270593","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@dzhechkov/skills-12factor","version":"0.1.8","keywords":["claude-code","skills","12factor","twelve-factor","cloud-native","dz-harness"],"license":"CC-BY-4.0","_id":"@dzhechkov/skills-12factor@0.1.8","maintainers":[{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"}],"homepage":"https://github.com/djd1m/dz-harness-hub#readme","bugs":{"url":"https://github.com/djd1m/dz-harness-hub/issues"},"dist":{"shasum":"4d9b3b8f5e8d2883fa9d7384d866b629145777c1","tarball":"https://registry.npmjs.org/@dzhechkov/skills-12factor/-/skills-12factor-0.1.8.tgz","fileCount":43,"integrity":"sha512-sDXcusfbo/KJgs+ghxHZFnI5sretOXEkS7JuopsbONNLiStuY1DxoDYL08up+/zOA+vQvf8HOSnDQoLQKDNkfA==","signatures":[{"sig":"MEUCIQDXqyOiu6KUZbz5LwtyWC7OBWauERU/7f05rVecQoyd8AIgVkUjgRHXw3ITWMehkafKCobf/ijGKPWaAA4RNhQvas8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":233762},"_from":"file:dzhechkov-skills-12factor-0.1.8.tgz","scripts":{},"_npmUser":{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"},"_resolved":"/tmp/76072a9b4a8d4bd19c5c0a62b9ce79c4/dzhechkov-skills-12factor-0.1.8.tgz","_integrity":"sha512-sDXcusfbo/KJgs+ghxHZFnI5sretOXEkS7JuopsbONNLiStuY1DxoDYL08up+/zOA+vQvf8HOSnDQoLQKDNkfA==","repository":{"url":"git+https://github.com/djd1m/dz-harness-hub.git","type":"git","directory":"packages/@dzhechkov/skills-12factor"},"_npmVersion":"10.9.4","description":"12 decision-moment skills distilled from The Twelve-Factor App (CC BY 4.0) — one per factor. Makes AI coders apply 12-factor decisions (config-in-env, stateless processes, port binding, dev-prod parity, …). Generated by @dzhechkov/skills-book-digitizer; d","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills-12factor_0.1.8_1787632896743_0.7558305385413289","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@dzhechkov/skills-12factor","version":"0.1.9","keywords":["claude-code","skills","12factor","twelve-factor","cloud-native","dz-harness","dz-digitized"],"license":"CC-BY-4.0","_id":"@dzhechkov/skills-12factor@0.1.9","maintainers":[{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"}],"homepage":"https://github.com/djd1m/dz-harness-hub#readme","bugs":{"url":"https://github.com/djd1m/dz-harness-hub/issues"},"dist":{"shasum":"142606a495a0e3b536b053b3595962fbd5c0d5dd","tarball":"https://registry.npmjs.org/@dzhechkov/skills-12factor/-/skills-12factor-0.1.9.tgz","fileCount":43,"integrity":"sha512-FrUUIHRc7T7ZBWgY5olWNMh0dcfgZ6pgA4iBuHXa0oF+V710ClnQdXdDKH7QdAExUQ7Zd561qdihusqjIgwuYA==","signatures":[{"sig":"MEYCIQDqnrvkmQxHw79ForCoaNJtznkySHpijt4uAHa2Fi8+qQIhAM3MS46KbulqZlbOAc/PvoaM8miOP9MaYpSfHW79QDDy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":233782},"_from":"file:dzhechkov-skills-12factor-0.1.9.tgz","scripts":{},"_npmUser":{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"},"_resolved":"/tmp/a465d6d0087f543201ef00710a938d4b/dzhechkov-skills-12factor-0.1.9.tgz","_integrity":"sha512-FrUUIHRc7T7ZBWgY5olWNMh0dcfgZ6pgA4iBuHXa0oF+V710ClnQdXdDKH7QdAExUQ7Zd561qdihusqjIgwuYA==","repository":{"url":"git+https://github.com/djd1m/dz-harness-hub.git","type":"git","directory":"packages/@dzhechkov/skills-12factor"},"_npmVersion":"10.9.4","description":"12 decision-moment skills distilled from The Twelve-Factor App (CC BY 4.0) — one per factor. Makes AI coders apply 12-factor decisions (config-in-env, stateless processes, port binding, dev-prod parity, …). Generated by @dzhechkov/skills-book-digitizer; d","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills-12factor_0.1.9_1787633525731_0.8679711086865405","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@dzhechkov/skills-12factor","version":"0.1.10","keywords":["claude-code","skills","12factor","twelve-factor","cloud-native","dz-harness","dz-digitized"],"license":"CC-BY-4.0","_id":"@dzhechkov/skills-12factor@0.1.10","maintainers":[{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"}],"homepage":"https://github.com/djd1m/dz-harness-hub#readme","bugs":{"url":"https://github.com/djd1m/dz-harness-hub/issues"},"dist":{"shasum":"bff46d4d9595f5622cc0e50682d6167b6ed8b416","tarball":"https://registry.npmjs.org/@dzhechkov/skills-12factor/-/skills-12factor-0.1.10.tgz","fileCount":43,"integrity":"sha512-XCIT6ytLzYZe21cXDp30gP/kgmKNSKjtI4A/COm0Zw0YqkJlwm7kvunj0iJdmQh+VewSHfOHYNj9QNb/LkaaAg==","signatures":[{"sig":"MEUCIQCBIg4tHrV4OhUeMi9hdrR0fZ9R23C7TIO6TsR5VWUSIgIgIfufn10B24orNtx++/IdP9auwnH8wKY5PiWe9ERmbis=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":233920},"_from":"file:dzhechkov-skills-12factor-0.1.10.tgz","scripts":{},"_npmUser":{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"},"_resolved":"/tmp/5a6f65338faac0c709e40b3da0ca65b2/dzhechkov-skills-12factor-0.1.10.tgz","_integrity":"sha512-XCIT6ytLzYZe21cXDp30gP/kgmKNSKjtI4A/COm0Zw0YqkJlwm7kvunj0iJdmQh+VewSHfOHYNj9QNb/LkaaAg==","repository":{"url":"git+https://github.com/djd1m/dz-harness-hub.git","type":"git","directory":"packages/@dzhechkov/skills-12factor"},"_npmVersion":"10.9.4","description":"12 decision-moment skills distilled from The Twelve-Factor App (CC BY 4.0) — one per factor. Makes AI coders apply 12-factor decisions (config-in-env, stateless processes, port binding, dev-prod parity, …). Generated by @dzhechkov/skills-book-digitizer; d","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills-12factor_0.1.10_1787944470284_0.4466220514221375","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@dzhechkov/skills-12factor","version":"0.1.11","keywords":["claude-code","skills","12factor","twelve-factor","cloud-native","dz-harness","dz-digitized"],"license":"CC-BY-4.0","_id":"@dzhechkov/skills-12factor@0.1.11","maintainers":[{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"}],"homepage":"https://github.com/djd1m/dz-harness-hub#readme","bugs":{"url":"https://github.com/djd1m/dz-harness-hub/issues"},"dist":{"shasum":"38206be35f5857c5a45f7c8b368cb919827c6c91","tarball":"https://registry.npmjs.org/@dzhechkov/skills-12factor/-/skills-12factor-0.1.11.tgz","fileCount":43,"integrity":"sha512-4WctmRdrN2U/0YkUrx/NihI8ZV2axElVZnTtOSndDrxiWiBDk+Z9jomb75tNwvPVAYoO1o2i+l49oqixg09KYQ==","signatures":[{"sig":"MEYCIQCepQihSq9GSlrE46fvEu6ykRRZ12VbSVVddhLtV+zHigIhAIScpc7F2qVIc1aL+uBOJsmbaSIGWnCxEy3YXZ81us2J","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":233920},"_from":"file:dzhechkov-skills-12factor-0.1.11.tgz","scripts":{},"_npmUser":{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"},"_resolved":"/tmp/f3cadd487a8a39428c245238940603aa/dzhechkov-skills-12factor-0.1.11.tgz","_integrity":"sha512-4WctmRdrN2U/0YkUrx/NihI8ZV2axElVZnTtOSndDrxiWiBDk+Z9jomb75tNwvPVAYoO1o2i+l49oqixg09KYQ==","repository":{"url":"git+https://github.com/djd1m/dz-harness-hub.git","type":"git","directory":"packages/@dzhechkov/skills-12factor"},"_npmVersion":"10.9.4","description":"12 decision-moment skills distilled from The Twelve-Factor App (CC BY 4.0) — one per factor. Makes AI coders apply 12-factor decisions (config-in-env, stateless processes, port binding, dev-prod parity, …). Generated by @dzhechkov/skills-book-digitizer; d","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills-12factor_0.1.11_1787944852328_0.7685602339103246","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@dzhechkov/skills-12factor","version":"0.1.12","keywords":["claude-code","skills","12factor","twelve-factor","cloud-native","dz-harness","dz-digitized"],"license":"CC-BY-4.0","_id":"@dzhechkov/skills-12factor@0.1.12","maintainers":[{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"}],"homepage":"https://github.com/djd1m/dz-harness-hub#readme","bugs":{"url":"https://github.com/djd1m/dz-harness-hub/issues"},"dist":{"shasum":"7a0dd0adedcdba433d32d8aaf1a321d1852a41e0","tarball":"https://registry.npmjs.org/@dzhechkov/skills-12factor/-/skills-12factor-0.1.12.tgz","fileCount":43,"integrity":"sha512-QS5IBOpjA6708M+jNpPEZa2itx7SqKNKttJnlACDY3GC1s2aFsQrEUTftsc1xXcoBa9qoYZOrIeMf4w9l8hPBQ==","signatures":[{"sig":"MEQCIAFXeK7CAbX16bRRUdRC1L2lD2qM/ZrSAq2CTSdAdNOoAiAj/+Hf9oQUsEWRuIGNya3PVp0hEwlczbRcamYKERKL1Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":233920},"_from":"file:dzhechkov-skills-12factor-0.1.12.tgz","scripts":{},"_npmUser":{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"},"_resolved":"/tmp/e93e54bf5b3f899a96270a186ab3dd80/dzhechkov-skills-12factor-0.1.12.tgz","_integrity":"sha512-QS5IBOpjA6708M+jNpPEZa2itx7SqKNKttJnlACDY3GC1s2aFsQrEUTftsc1xXcoBa9qoYZOrIeMf4w9l8hPBQ==","repository":{"url":"git+https://github.com/djd1m/dz-harness-hub.git","type":"git","directory":"packages/@dzhechkov/skills-12factor"},"_npmVersion":"10.9.4","description":"12 decision-moment skills distilled from The Twelve-Factor App (CC BY 4.0) — one per factor. Makes AI coders apply 12-factor decisions (config-in-env, stateless processes, port binding, dev-prod parity, …). Generated by @dzhechkov/skills-book-digitizer; d","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills-12factor_0.1.12_1788003762946_0.3150353909460679","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@dzhechkov/skills-12factor","version":"0.1.13","keywords":["claude-code","skills","12factor","twelve-factor","cloud-native","dz-harness","dz-digitized"],"license":"CC-BY-4.0","_id":"@dzhechkov/skills-12factor@0.1.13","maintainers":[{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"}],"homepage":"https://github.com/djd1m/dz-harness/tree/main/packages/@dzhechkov/skills-12factor#readme","bugs":{"url":"https://github.com/djd1m/dz-harness/issues"},"dist":{"shasum":"8285bbf80e5990e42fb8dfa1fa57091ecfd1be42","tarball":"https://registry.npmjs.org/@dzhechkov/skills-12factor/-/skills-12factor-0.1.13.tgz","fileCount":43,"integrity":"sha512-hRucqkkSHV0wNZj0iqoCBp+IQKHoTJtb0Qu2B8IX0XCqZ7LS4EyqGtsQpZGmzSdN+MdPztR3rH+AinC0Cbr0QA==","signatures":[{"sig":"MEYCIQDqq8R1fBJT0deu+7hpZtOG8ahJLm/BrkgOuGAiT3QJtQIhAM151qmiDkW96s7qboSBVm44U+vKcLn79eSKrh3Fcy0c","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":234099},"_from":"file:dzhechkov-skills-12factor-0.1.13.tgz","scripts":{},"_npmUser":{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"},"_resolved":"/tmp/68acefe207772305099bdd5aa2a7a7bc/dzhechkov-skills-12factor-0.1.13.tgz","_integrity":"sha512-hRucqkkSHV0wNZj0iqoCBp+IQKHoTJtb0Qu2B8IX0XCqZ7LS4EyqGtsQpZGmzSdN+MdPztR3rH+AinC0Cbr0QA==","repository":{"url":"git+https://github.com/djd1m/dz-harness.git","type":"git","directory":"packages/@dzhechkov/skills-12factor"},"_npmVersion":"10.9.4","description":"12 decision-moment skills distilled from The Twelve-Factor App (CC BY 4.0) — one per factor. Makes AI coders apply 12-factor decisions (config-in-env, stateless processes, port binding, dev-prod parity, …). Generated by @dzhechkov/skills-book-digitizer; d","directories":{},"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/skills-12factor_0.1.13_1788025707151_0.49548165015439816","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"_id":"@dzhechkov/skills-12factor@0.1.14","bugs":{"url":"https://github.com/djd1m/dz-harness/issues"},"dist":{"shasum":"aee45414b2c6f142cf26ab40aa17ac615b3e8685","tarball":"https://registry.npmjs.org/@dzhechkov/skills-12factor/-/skills-12factor-0.1.14.tgz","fileCount":43,"integrity":"sha512-kFrRgtMmX7rTWk0gkJKyJNjFj849a+xsRK/tgs/5nAMCVrOB+zJIEX9mdY6ienhmT/mw8LiWT1TZcihFJbEgCQ==","signatures":[{"sig":"MEUCIDCqOsztJ09XLWbU9VXDfki2jDzR9c+lXflHfGbpvqH1AiEA8mHfjALjFsNitl3s2JcI1urBy50BXw/43TjBF2ySJ+o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDcXSlHyO0FYAkz97KhSFanHLNcudlfRQhqziNq36ysLQIgZc7vLlj/Q+KtlHvb1RC9dzs5sxUJAU6cwsMTlVFn25g="}],"unpackedSize":234099},"name":"@dzhechkov/skills-12factor","_from":"file:dzhechkov-skills-12factor-0.1.14.tgz","license":"CC-BY-4.0","scripts":{},"version":"0.1.14","_npmUser":{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"},"homepage":"https://github.com/djd1m/dz-harness/tree/main/packages/@dzhechkov/skills-12factor#readme","keywords":["claude-code","skills","12factor","twelve-factor","cloud-native","dz-harness","dz-digitized"],"_resolved":"/tmp/1878f08940cbb8ec2a25dd11fb8a0c5d/dzhechkov-skills-12factor-0.1.14.tgz","_integrity":"sha512-kFrRgtMmX7rTWk0gkJKyJNjFj849a+xsRK/tgs/5nAMCVrOB+zJIEX9mdY6ienhmT/mw8LiWT1TZcihFJbEgCQ==","repository":{"url":"git+https://github.com/djd1m/dz-harness.git","type":"git","directory":"packages/@dzhechkov/skills-12factor"},"_npmVersion":"10.9.4","description":"12 decision-moment skills distilled from The Twelve-Factor App (CC BY 4.0) — one per factor. Makes AI coders apply 12-factor decisions (config-in-env, stateless processes, port binding, dev-prod parity, …). Generated by @dzhechkov/skills-book-digitizer; d","directories":{},"maintainers":[{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"}],"_nodeVersion":"22.22.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/skills-12factor_0.1.14_1789293290680_0.09347232937844807"}}},"time":{"created":"2026-07-04T07:49:50.516Z","modified":"2026-09-13T09:54:50.953Z","0.1.1":"2026-07-04T07:49:50.788Z","0.1.3":"2026-07-04T08:03:27.659Z","0.1.5":"2026-07-04T08:18:55.032Z","0.1.7":"2026-07-04T10:52:00.087Z","0.1.8":"2026-08-25T04:41:36.898Z","0.1.9":"2026-08-25T04:52:05.879Z","0.1.10":"2026-08-28T19:14:30.479Z","0.1.11":"2026-08-28T19:20:52.481Z","0.1.12":"2026-08-29T11:42:43.139Z","0.1.13":"2026-08-29T17:48:27.306Z","0.1.14":"2026-09-13T09:54:50.789Z"},"bugs":{"url":"https://github.com/djd1m/dz-harness/issues"},"license":"CC-BY-4.0","homepage":"https://github.com/djd1m/dz-harness/tree/main/packages/@dzhechkov/skills-12factor#readme","keywords":["claude-code","skills","12factor","twelve-factor","cloud-native","dz-harness","dz-digitized"],"repository":{"url":"git+https://github.com/djd1m/dz-harness.git","type":"git","directory":"packages/@dzhechkov/skills-12factor"},"description":"12 decision-moment skills distilled from The Twelve-Factor App (CC BY 4.0) — one per factor. Makes AI coders apply 12-factor decisions (config-in-env, stateless processes, port binding, dev-prod parity, …). Generated by @dzhechkov/skills-book-digitizer; d","maintainers":[{"name":"dzhechkov","email":"jechkov.dmitriy@gmail.com"}],"readme":"# @dzhechkov/skills-12factor\n\n**12 decision-moment skills distilled from [The Twelve-Factor App](https://12factor.net)** — one per\nfactor — so AI coders (Claude Code, Codex, …) apply 12-factor decisions at the moments they arise:\nwhere config lives, how processes hold state, how services bind ports, how to keep dev/prod in parity, …\n\n> Generated by [`@dzhechkov/skills-book-digitizer`](https://www.npmjs.com/package/@dzhechkov/skills-book-digitizer)\n> — the **first public example** of a digitized-book skill pack. Derivative of The Twelve-Factor App,\n> **CC BY 4.0**, attribution in [`NOTICE`](NOTICE).\n\n## The 12 skills (one per factor)\n\n| Skill | Factor | Decision it captures |\n|-------|--------|----------------------|\n| `12factor-codebase-repo-mapping` | I | one codebase per app, many deploys |\n| `12factor-explicit-dependencies` | II | declare + isolate dependencies explicitly |\n| `12factor-config-in-environment` | III | store per-deploy config in the environment, not code |\n| `12factor-backing-services-as-resources` | IV | treat databases/queues/caches as attached, swappable resources |\n| `12factor-build-release-run-separation` | V | strictly separate build, release, run |\n| `12factor-stateless-processes` | VI | stateless, share-nothing; persist to backing services |\n| `12factor-port-binding` | VII | export via port binding, self-contained |\n| `12factor-concurrency-process-model` | VIII | scale out via the process model / process types |\n| `12factor-disposability-fast-startup` | IX | fast startup, graceful + robust shutdown |\n| `12factor-dev-prod-parity` | X | keep dev, staging, prod as similar as possible |\n| `12factor-logs-as-streams` | XI | treat logs as event streams to stdout |\n| `12factor-admin-processes` | XII | run one-off admin tasks in a production-identical environment |\n\nEach skill ships a house-format `SKILL.md` (Decision · Protocol · Anti-patterns · Related decisions ·\nИсточник · Self-check · Examples), page-cited Knowledge Units in `references/`, and routing evals in\n`evals/`. **trust_tier 0** — machine-distilled from the source, unreviewed; promote with human review.\n\n## Install into an agent\n\n**The easy way — install the whole pack in one command:**\n\n```bash\ndz install @dzhechkov/skills-12factor --target claude-code\n```\n\nThat's it — all 12 skills land in `.claude/skills/`. Then just **talk to Claude Code in plain\nlanguage** and it activates the right skill automatically (routing-gated — you never type skill ids):\n\n> «Используй нужные скиллы из набора 12factor, чтобы решить задачу: <опиши задачу или дай ссылку на сервис>.»\n> *(EN: \"Use the relevant 12factor skills to solve: &lt;your task&gt;.\")*\n\n**Advanced — just one decision:** if you only want a single skill, install it directly:\n\n```bash\ndz init --target claude-code --select 12factor-config-in-environment\n```\n\nTargets: `claude-code` · `codex` · `opencode` · `hermes` · `openclaude` · `copilot`. The agent activates\neach skill on its decision moment (validated by a CP3.5 routing gate: 100% activation / 0% sibling-steal\nacross 103 positives + 82 hard-negatives).\n\n## Make a portable bundle\n\n```bash\ndz bundle --select 12factor-config-in-environment,12factor-stateless-processes --out ./12factor-bundle\n```\n\nSelf-contained `skills/` tree for a generic / LangGraph consumer.\n\n## Usage scenarios\n\n**Install the pack once** (`dz install @dzhechkov/skills-12factor --target claude-code`), then just\n**describe your task to Claude Code in plain language** — the agent auto-activates the right skills. No\nskill ids to memorize. Here are the situations where this pack pays off, with example prompts you can\ncopy and adapt:\n\n### 1. Audit an existing service for 12-factor compliance\n\n**Situation:** you inherited a service and want to know where it drifts from cloud-native best practice\nbefore you containerize or move it to k8s.\n\n> «Используй скиллы 12factor: прогони этот сервис по двенадцати факторам и укажи, где он их нарушает, с приоритетом по риску.»\n> *(EN: \"Using the 12factor skills, audit this service against the twelve factors; list violations, highest-risk first.\")*\n\n**What happens:** the agent walks the code applying each decision skill's criteria — e.g.\n`12factor-config-in-environment` flags hard-coded DB URLs/secrets (its litmus test: \"could the repo go\npublic without leaking credentials?\"), `12factor-stateless-processes` flags in-process session/cache\nstate, `12factor-logs-as-streams` flags a service writing its own log files. You get a prioritized,\ncriteria-backed compliance report, not vibes.\n\n### 2. Design a new cloud-native service correctly from day one\n\n**Situation:** greenfield — you want the scaffolding to be 12-factor by construction, not retrofitted.\n\n> «Используй скиллы 12factor: спроектируй скелет нового сервиса заказов — как разложить репозиторий, зависимости, конфиг и стадии сборки/релиза/запуска.»\n\n**What happens:** the agent makes the early structural decisions with the factors' rationale —\none codebase→many deploys, an explicit dependency manifest with isolation, config via env, a strict\nbuild/release/run split, a port-bound self-contained process — and explains *why* at each fork.\n\n### 3. Make one decision, right now, at the moment it arises\n\n**Situation:** you hit a specific fork mid-task and want the principled answer, cited.\n\n> «У меня фича-флаги и ключ к платёжному API — положить в конфиг-файл в репозитории или куда?»\n> *(EN: \"Feature flags + a payment API key — a config file in the repo, or where?\")*\n\n**What happens:** `12factor-config-in-environment` activates (routing-gated to fire on exactly this\ndecision), applies the \"config vs code\" separation + the open-source litmus test, and distinguishes\nper-deploy config (→ env) from internal app config (→ code) — with the Twelve-Factor citation.\n\n### 4. Get to container/k8s readiness\n\n**Situation:** you're Dockerizing/moving to Kubernetes and need the runtime-shape decisions right so\nthe platform can scale, restart, and roll your app safely.\n\n> «Используй скиллы 12factor: подготовь этот сервис к запуску в Kubernetes — порты, graceful shutdown, масштабирование, логи.»\n\n**What happens:** `12factor-port-binding` (bind a port, self-contained), `12factor-disposability-fast-startup`\n(fast start + SIGTERM graceful shutdown + crash-safety), `12factor-concurrency-process-model` (scale out\nvia process types, map to replicas), `12factor-logs-as-streams` (stdout, let the platform collect) — the\nexact decisions that make a container behave under an orchestrator.\n\n### 5. Teach the \"why\" (onboarding / review)\n\n**Situation:** a teammate asks *why* the app is built this way, or you want a review that explains the\nrationale, not just the rule.\n\n> «Объясни, почему у нас stateless-процессы и логи в stdout — какие проблемы это решает?»\n\n**What happens:** the relevant skills surface the factor's reasoning (share-nothing → horizontal scale &\ncrash-safety; logs-as-streams → the platform, not the app, owns routing/retention), grounded in the\nsource with attribution — useful for onboarding docs and PR review comments.\n\n## Quality & provenance\n\n- **Paraphrased, not copied** — a deterministic word-shingling gate (`w=8`) enforces **no uncited\n  verbatim run ≥ 8 words**; the pack passes with 0 (cited ≤25-word quotes are exempt).\n- **Routing-gated** — an LLM-judge oracle over the full description catalog confirms each skill\n  activates on its own decision and not a sibling's.\n- **Attribution (CC BY 4.0)** — every skill's «Источник» + [`NOTICE`](NOTICE) credit The Twelve-Factor\n  App authors. This derivative is distributed under the same CC BY 4.0.\n\n## License\n\n**CC BY 4.0** — © the Twelve-Factor App authors for the underlying work; this derivative pack is\nlicensed CC BY 4.0. See [`LICENSE`](LICENSE) and [`NOTICE`](NOTICE). You may use, share, and adapt with\nattribution.\n","readmeFilename":"README.md"}