opencode-skills-collection 4.0.67 → 4.0.69

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (329) hide show
  1. package/bundled-skills/.antigravity-install-manifest.json +281 -1
  2. package/bundled-skills/access-review/SKILL.md +394 -0
  3. package/bundled-skills/access-review/references/details.md +121 -0
  4. package/bundled-skills/agent-evals/SKILL.md +420 -0
  5. package/bundled-skills/agent-observability/SKILL.md +346 -0
  6. package/bundled-skills/agent-observability/references/details.md +786 -0
  7. package/bundled-skills/ai-agent-security/SKILL.md +393 -0
  8. package/bundled-skills/ai-agent-security/references/details.md +912 -0
  9. package/bundled-skills/ai-coding-agent-guardrails/SKILL.md +442 -0
  10. package/bundled-skills/ai-coding-agent-guardrails/references/details.md +753 -0
  11. package/bundled-skills/ai-inference-service-mesh/SKILL.md +449 -0
  12. package/bundled-skills/ai-pipeline-orchestration/SKILL.md +287 -0
  13. package/bundled-skills/ai-red-teaming/SKILL.md +409 -0
  14. package/bundled-skills/ai-security-hardening/SKILL.md +343 -0
  15. package/bundled-skills/ai-sre-incident-response/SKILL.md +336 -0
  16. package/bundled-skills/alerting-oncall/SKILL.md +458 -0
  17. package/bundled-skills/alerting-oncall/references/details.md +84 -0
  18. package/bundled-skills/anti-slop-design/SKILL.md +393 -0
  19. package/bundled-skills/antigravity-maintainer-batch-release/SKILL.md +1 -0
  20. package/bundled-skills/apk-redteam-pipeline/SKILL.md +446 -0
  21. package/bundled-skills/argocd-gitops/SKILL.md +469 -0
  22. package/bundled-skills/arm-templates/SKILL.md +438 -0
  23. package/bundled-skills/arm-templates/references/details.md +64 -0
  24. package/bundled-skills/artifact-yylo/SKILL.md +122 -0
  25. package/bundled-skills/asset-inventory/SKILL.md +412 -0
  26. package/bundled-skills/asset-inventory/references/details.md +127 -0
  27. package/bundled-skills/audit-logging/SKILL.md +476 -0
  28. package/bundled-skills/aws-cloudtrail/SKILL.md +486 -0
  29. package/bundled-skills/aws-cost-optimization/SKILL.md +331 -0
  30. package/bundled-skills/aws-ec2/SKILL.md +426 -0
  31. package/bundled-skills/aws-ecs-fargate/SKILL.md +388 -0
  32. package/bundled-skills/aws-iam/SKILL.md +463 -0
  33. package/bundled-skills/aws-lambda/SKILL.md +428 -0
  34. package/bundled-skills/aws-rds/SKILL.md +380 -0
  35. package/bundled-skills/aws-s3/SKILL.md +434 -0
  36. package/bundled-skills/aws-secrets-manager/SKILL.md +486 -0
  37. package/bundled-skills/aws-vpc/SKILL.md +436 -0
  38. package/bundled-skills/azure-ai-document-intelligence-ts/SKILL.md +1 -1
  39. package/bundled-skills/azure-aks/SKILL.md +423 -0
  40. package/bundled-skills/azure-devops/SKILL.md +457 -0
  41. package/bundled-skills/azure-functions-devsec/SKILL.md +436 -0
  42. package/bundled-skills/azure-keyvault/SKILL.md +455 -0
  43. package/bundled-skills/azure-keyvault/references/details.md +83 -0
  44. package/bundled-skills/azure-monitor-audit/SKILL.md +379 -0
  45. package/bundled-skills/azure-networking/SKILL.md +448 -0
  46. package/bundled-skills/azure-networking/references/details.md +135 -0
  47. package/bundled-skills/azure-sql/SKILL.md +413 -0
  48. package/bundled-skills/azure-sql/references/details.md +113 -0
  49. package/bundled-skills/azure-vms/SKILL.md +402 -0
  50. package/bundled-skills/azure-vms/references/details.md +134 -0
  51. package/bundled-skills/backup-recovery/SKILL.md +388 -0
  52. package/bundled-skills/bb-methodology/SKILL.md +451 -0
  53. package/bundled-skills/bb-methodology/references/details.md +120 -0
  54. package/bundled-skills/block-storage/SKILL.md +371 -0
  55. package/bundled-skills/blue-green-deploy/SKILL.md +453 -0
  56. package/bundled-skills/blue-green-deploy/references/details.md +90 -0
  57. package/bundled-skills/bug-bounty/SKILL.md +447 -0
  58. package/bundled-skills/bug-bounty/references/details.md +1316 -0
  59. package/bundled-skills/bugcrowd-reporting/SKILL.md +351 -0
  60. package/bundled-skills/business-continuity/SKILL.md +463 -0
  61. package/bundled-skills/career-ops/SKILL.md +186 -0
  62. package/bundled-skills/cdn-setup/SKILL.md +374 -0
  63. package/bundled-skills/change-management/SKILL.md +438 -0
  64. package/bundled-skills/change-management/references/details.md +105 -0
  65. package/bundled-skills/circleci/SKILL.md +475 -0
  66. package/bundled-skills/cis-benchmarks/SKILL.md +150 -0
  67. package/bundled-skills/cloudflare-pages/SKILL.md +318 -0
  68. package/bundled-skills/cloudflare-r2/SKILL.md +353 -0
  69. package/bundled-skills/cloudflare-workers/SKILL.md +415 -0
  70. package/bundled-skills/cloudflare-zero-trust/SKILL.md +361 -0
  71. package/bundled-skills/cloudformation/SKILL.md +461 -0
  72. package/bundled-skills/constraint-driven-development/SKILL.md +335 -0
  73. package/bundled-skills/constraint-driven-development/references/floor-guard.md +99 -0
  74. package/bundled-skills/container-hardening/SKILL.md +126 -0
  75. package/bundled-skills/container-registries/SKILL.md +435 -0
  76. package/bundled-skills/container-scanning/SKILL.md +416 -0
  77. package/bundled-skills/convex-backend/SKILL.md +338 -0
  78. package/bundled-skills/dast-scanning/SKILL.md +437 -0
  79. package/bundled-skills/database-backups/SKILL.md +425 -0
  80. package/bundled-skills/datadog/SKILL.md +487 -0
  81. package/bundled-skills/dependency-scanning/SKILL.md +457 -0
  82. package/bundled-skills/devcontainers-nix/SKILL.md +416 -0
  83. package/bundled-skills/disaster-recovery/SKILL.md +374 -0
  84. package/bundled-skills/disaster-recovery/references/details.md +219 -0
  85. package/bundled-skills/dns-management/SKILL.md +375 -0
  86. package/bundled-skills/docker-compose/SKILL.md +482 -0
  87. package/bundled-skills/docker-management/SKILL.md +426 -0
  88. package/bundled-skills/ebpf-observability/SKILL.md +436 -0
  89. package/bundled-skills/ebpf-observability/references/details.md +542 -0
  90. package/bundled-skills/elk-stack/SKILL.md +487 -0
  91. package/bundled-skills/enterprise-vpn-attack/SKILL.md +395 -0
  92. package/bundled-skills/evidence-hygiene/SKILL.md +404 -0
  93. package/bundled-skills/feature-flags/SKILL.md +426 -0
  94. package/bundled-skills/feature-flags/references/details.md +86 -0
  95. package/bundled-skills/fedramp-compliance/SKILL.md +453 -0
  96. package/bundled-skills/firebase-app-platform/SKILL.md +381 -0
  97. package/bundled-skills/firewall-config/SKILL.md +479 -0
  98. package/bundled-skills/gcp-audit-logs/SKILL.md +452 -0
  99. package/bundled-skills/gcp-audit-logs/references/details.md +56 -0
  100. package/bundled-skills/gcp-cloud-functions/SKILL.md +284 -0
  101. package/bundled-skills/gcp-cloud-sql/SKILL.md +277 -0
  102. package/bundled-skills/gcp-compute/SKILL.md +319 -0
  103. package/bundled-skills/gcp-gke/SKILL.md +307 -0
  104. package/bundled-skills/gcp-networking/SKILL.md +293 -0
  105. package/bundled-skills/gcp-secret-manager/SKILL.md +421 -0
  106. package/bundled-skills/gcp-secret-manager/references/details.md +131 -0
  107. package/bundled-skills/gdpr-compliance/SKILL.md +451 -0
  108. package/bundled-skills/gdpr-compliance/references/details.md +145 -0
  109. package/bundled-skills/geo-audit/SKILL.md +368 -0
  110. package/bundled-skills/geo-brand-mentions/SKILL.md +68 -0
  111. package/bundled-skills/geo-brand-mentions/references/details.md +471 -0
  112. package/bundled-skills/geo-citability/SKILL.md +350 -0
  113. package/bundled-skills/geo-compare/SKILL.md +340 -0
  114. package/bundled-skills/geo-content/SKILL.md +383 -0
  115. package/bundled-skills/geo-crawlers/SKILL.md +408 -0
  116. package/bundled-skills/geo-llmstxt/SKILL.md +464 -0
  117. package/bundled-skills/geo-platform-optimizer/SKILL.md +314 -0
  118. package/bundled-skills/geo-proposal/SKILL.md +378 -0
  119. package/bundled-skills/geo-prospect/SKILL.md +225 -0
  120. package/bundled-skills/geo-report/SKILL.md +436 -0
  121. package/bundled-skills/geo-report-pdf/SKILL.md +157 -0
  122. package/bundled-skills/geo-schema/SKILL.md +408 -0
  123. package/bundled-skills/geo-technical/SKILL.md +78 -0
  124. package/bundled-skills/geo-technical/references/details.md +543 -0
  125. package/bundled-skills/git-workflow/SKILL.md +460 -0
  126. package/bundled-skills/github-actions/SKILL.md +368 -0
  127. package/bundled-skills/gitlab-ci/SKILL.md +340 -0
  128. package/bundled-skills/google-no-code/SKILL.md +136 -0
  129. package/bundled-skills/gpu-kubernetes-operations/SKILL.md +468 -0
  130. package/bundled-skills/gpu-server-management/SKILL.md +236 -0
  131. package/bundled-skills/hashicorp-vault/SKILL.md +408 -0
  132. package/bundled-skills/helm-charts/SKILL.md +469 -0
  133. package/bundled-skills/hipaa-compliance/SKILL.md +451 -0
  134. package/bundled-skills/hunt-aspnet/SKILL.md +321 -0
  135. package/bundled-skills/hunt-ato/SKILL.md +184 -0
  136. package/bundled-skills/hunt-auth-bypass/SKILL.md +426 -0
  137. package/bundled-skills/hunt-auth-bypass/references/details.md +80 -0
  138. package/bundled-skills/hunt-brute-force/SKILL.md +341 -0
  139. package/bundled-skills/hunt-business-logic/SKILL.md +281 -0
  140. package/bundled-skills/hunt-cache-poison/SKILL.md +382 -0
  141. package/bundled-skills/hunt-captcha-bypass/SKILL.md +136 -0
  142. package/bundled-skills/hunt-cicd/SKILL.md +311 -0
  143. package/bundled-skills/hunt-clickjacking/SKILL.md +110 -0
  144. package/bundled-skills/hunt-cors/SKILL.md +335 -0
  145. package/bundled-skills/hunt-dom/SKILL.md +323 -0
  146. package/bundled-skills/hunt-exceptional-conditions/SKILL.md +111 -0
  147. package/bundled-skills/hunt-file-upload/SKILL.md +202 -0
  148. package/bundled-skills/hunt-fintech-graphql/SKILL.md +289 -0
  149. package/bundled-skills/hunt-forgot-password/SKILL.md +114 -0
  150. package/bundled-skills/hunt-grpc/SKILL.md +317 -0
  151. package/bundled-skills/hunt-host-header/SKILL.md +309 -0
  152. package/bundled-skills/hunt-html-injection/SKILL.md +106 -0
  153. package/bundled-skills/hunt-http-smuggling/SKILL.md +129 -0
  154. package/bundled-skills/hunt-http-smuggling/references/phase2h-smuggling-cachepoison.md +177 -0
  155. package/bundled-skills/hunt-idor/SKILL.md +434 -0
  156. package/bundled-skills/hunt-jwt-crypto/SKILL.md +221 -0
  157. package/bundled-skills/hunt-k8s/SKILL.md +337 -0
  158. package/bundled-skills/hunt-laravel/SKILL.md +255 -0
  159. package/bundled-skills/hunt-ldap/SKILL.md +351 -0
  160. package/bundled-skills/hunt-lfi/SKILL.md +311 -0
  161. package/bundled-skills/hunt-llm-ai/SKILL.md +289 -0
  162. package/bundled-skills/hunt-mfa-bypass/SKILL.md +177 -0
  163. package/bundled-skills/hunt-misc/SKILL.md +378 -0
  164. package/bundled-skills/hunt-nextjs/SKILL.md +299 -0
  165. package/bundled-skills/hunt-nodejs/SKILL.md +263 -0
  166. package/bundled-skills/hunt-nosqli/SKILL.md +210 -0
  167. package/bundled-skills/hunt-ntlm-info/SKILL.md +314 -0
  168. package/bundled-skills/hunt-oauth/SKILL.md +459 -0
  169. package/bundled-skills/hunt-open-redirect/SKILL.md +223 -0
  170. package/bundled-skills/hunt-race-condition/SKILL.md +381 -0
  171. package/bundled-skills/hunt-race-condition/references/details.md +159 -0
  172. package/bundled-skills/hunt-rag-vector/SKILL.md +212 -0
  173. package/bundled-skills/hunt-rce/SKILL.md +444 -0
  174. package/bundled-skills/hunt-rce/references/details.md +110 -0
  175. package/bundled-skills/hunt-saml/SKILL.md +156 -0
  176. package/bundled-skills/hunt-session/SKILL.md +342 -0
  177. package/bundled-skills/hunt-shadow-api/SKILL.md +198 -0
  178. package/bundled-skills/hunt-source-leak/SKILL.md +345 -0
  179. package/bundled-skills/hunt-spa-api/SKILL.md +163 -0
  180. package/bundled-skills/hunt-springboot/SKILL.md +285 -0
  181. package/bundled-skills/hunt-sqli/SKILL.md +466 -0
  182. package/bundled-skills/hunt-ssrf/SKILL.md +396 -0
  183. package/bundled-skills/hunt-ssrf/references/details.md +179 -0
  184. package/bundled-skills/hunt-ssti/SKILL.md +163 -0
  185. package/bundled-skills/hunt-subdomain/SKILL.md +379 -0
  186. package/bundled-skills/hunt-tls-network/SKILL.md +399 -0
  187. package/bundled-skills/hunt-xxe/SKILL.md +466 -0
  188. package/bundled-skills/i-have-adhd/SKILL.md +170 -0
  189. package/bundled-skills/idea-evaluator/SKILL.md +75 -0
  190. package/bundled-skills/idea-evaluator/idea-evaluator-con/SKILL.md +64 -0
  191. package/bundled-skills/idea-evaluator/idea-evaluator-pro/SKILL.md +64 -0
  192. package/bundled-skills/identity-access-management/SKILL.md +382 -0
  193. package/bundled-skills/identity-access-management/references/details.md +524 -0
  194. package/bundled-skills/incident-management/SKILL.md +484 -0
  195. package/bundled-skills/incident-response/SKILL.md +448 -0
  196. package/bundled-skills/incident-response/references/details.md +113 -0
  197. package/bundled-skills/interview-me/SKILL.md +248 -0
  198. package/bundled-skills/iso27001-compliance/SKILL.md +460 -0
  199. package/bundled-skills/jenkins/SKILL.md +462 -0
  200. package/bundled-skills/jev-use/SKILL.md +158 -0
  201. package/bundled-skills/kubernetes-hardening/SKILL.md +154 -0
  202. package/bundled-skills/kubernetes-ops/SKILL.md +449 -0
  203. package/bundled-skills/kubernetes-ops/references/details.md +108 -0
  204. package/bundled-skills/kustomize/SKILL.md +478 -0
  205. package/bundled-skills/ledger-tasks-yylo/SKILL.md +219 -0
  206. package/bundled-skills/linux-administration/SKILL.md +367 -0
  207. package/bundled-skills/linux-hardening/SKILL.md +154 -0
  208. package/bundled-skills/llm-app-security/SKILL.md +389 -0
  209. package/bundled-skills/llm-app-security/references/details.md +674 -0
  210. package/bundled-skills/llm-caching/SKILL.md +334 -0
  211. package/bundled-skills/llm-cost-optimization/SKILL.md +311 -0
  212. package/bundled-skills/llm-fine-tuning/SKILL.md +329 -0
  213. package/bundled-skills/llm-gateway/SKILL.md +282 -0
  214. package/bundled-skills/llm-inference-scaling/SKILL.md +286 -0
  215. package/bundled-skills/llmops-platform-engineering/SKILL.md +472 -0
  216. package/bundled-skills/load-balancing/SKILL.md +403 -0
  217. package/bundled-skills/loki-logging/SKILL.md +479 -0
  218. package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package-lock.json +4 -4
  219. package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package.json +1 -1
  220. package/bundled-skills/m365-entra-attack/SKILL.md +423 -0
  221. package/bundled-skills/mac-mini-llm-lab/SKILL.md +350 -0
  222. package/bundled-skills/mcp-server-security/SKILL.md +356 -0
  223. package/bundled-skills/mcp-server-security/references/details.md +745 -0
  224. package/bundled-skills/mdm-device-management/SKILL.md +404 -0
  225. package/bundled-skills/mdm-device-management/references/details.md +410 -0
  226. package/bundled-skills/meme-coin-audit/SKILL.md +402 -0
  227. package/bundled-skills/mid-engagement-ir-detection/SKILL.md +377 -0
  228. package/bundled-skills/model-registry-governance/SKILL.md +452 -0
  229. package/bundled-skills/model-serving-kubernetes/SKILL.md +339 -0
  230. package/bundled-skills/model-supply-chain-security/SKILL.md +427 -0
  231. package/bundled-skills/mongodb/SKILL.md +436 -0
  232. package/bundled-skills/multi-tenant-llm-hosting/SKILL.md +435 -0
  233. package/bundled-skills/multi-tenant-llm-hosting/references/details.md +211 -0
  234. package/bundled-skills/mysql/SKILL.md +390 -0
  235. package/bundled-skills/new-relic/SKILL.md +472 -0
  236. package/bundled-skills/nfs-storage/SKILL.md +356 -0
  237. package/bundled-skills/object-storage/SKILL.md +378 -0
  238. package/bundled-skills/offensive-osint/SKILL.md +443 -0
  239. package/bundled-skills/okta-attack/SKILL.md +436 -0
  240. package/bundled-skills/ollama-stack/SKILL.md +379 -0
  241. package/bundled-skills/openclaw-deployment-hardening/SKILL.md +135 -0
  242. package/bundled-skills/openclaw-local-mac-mini/SKILL.md +426 -0
  243. package/bundled-skills/openclaw-local-mac-mini/references/details.md +221 -0
  244. package/bundled-skills/openclaw-security-hardening/SKILL.md +135 -0
  245. package/bundled-skills/openshift/SKILL.md +485 -0
  246. package/bundled-skills/opentelemetry/SKILL.md +438 -0
  247. package/bundled-skills/opentelemetry/references/details.md +78 -0
  248. package/bundled-skills/opentofu-migration/SKILL.md +349 -0
  249. package/bundled-skills/osint-methodology/SKILL.md +460 -0
  250. package/bundled-skills/osint-methodology/references/details.md +1350 -0
  251. package/bundled-skills/pci-dss-compliance/SKILL.md +446 -0
  252. package/bundled-skills/penetration-testing/SKILL.md +152 -0
  253. package/bundled-skills/performance-tuning/SKILL.md +381 -0
  254. package/bundled-skills/plan-ledger-tasks-yylo/SKILL.md +52 -0
  255. package/bundled-skills/planetscale/SKILL.md +297 -0
  256. package/bundled-skills/platform-engineering/SKILL.md +348 -0
  257. package/bundled-skills/platform-engineering/references/details.md +944 -0
  258. package/bundled-skills/podman/SKILL.md +405 -0
  259. package/bundled-skills/policy-as-code/SKILL.md +434 -0
  260. package/bundled-skills/policy-as-code/references/details.md +204 -0
  261. package/bundled-skills/postgresql-devsec/SKILL.md +378 -0
  262. package/bundled-skills/prometheus-grafana/SKILL.md +469 -0
  263. package/bundled-skills/prompt-injection-defense/SKILL.md +483 -0
  264. package/bundled-skills/rag-infrastructure/SKILL.md +269 -0
  265. package/bundled-skills/rag-observability-evals/SKILL.md +444 -0
  266. package/bundled-skills/rag-observability-evals/references/details.md +92 -0
  267. package/bundled-skills/ralph-loop-yylo/SKILL.md +55 -0
  268. package/bundled-skills/ralph-loop-yylo/references/first_check.md +18 -0
  269. package/bundled-skills/ralph-loop-yylo/references/implement.md +60 -0
  270. package/bundled-skills/recon-scope-triage/SKILL.md +128 -0
  271. package/bundled-skills/redis/SKILL.md +421 -0
  272. package/bundled-skills/redteam-report-template/SKILL.md +370 -0
  273. package/bundled-skills/report-writing/SKILL.md +426 -0
  274. package/bundled-skills/report-writing/references/details.md +187 -0
  275. package/bundled-skills/resumable-implementation-contracts/SKILL.md +254 -0
  276. package/bundled-skills/reverse-proxy/SKILL.md +420 -0
  277. package/bundled-skills/runbook-creation/SKILL.md +438 -0
  278. package/bundled-skills/runbook-creation/references/details.md +71 -0
  279. package/bundled-skills/saas-security-posture/SKILL.md +415 -0
  280. package/bundled-skills/sast-scanning/SKILL.md +444 -0
  281. package/bundled-skills/sbom-supply-chain/SKILL.md +433 -0
  282. package/bundled-skills/security-arsenal/SKILL.md +446 -0
  283. package/bundled-skills/security-arsenal/references/details.md +540 -0
  284. package/bundled-skills/security-automation/SKILL.md +146 -0
  285. package/bundled-skills/semantic-versioning/SKILL.md +434 -0
  286. package/bundled-skills/semantic-versioning/references/details.md +83 -0
  287. package/bundled-skills/service-mesh/SKILL.md +422 -0
  288. package/bundled-skills/soc2-compliance/SKILL.md +409 -0
  289. package/bundled-skills/sops-encryption/SKILL.md +124 -0
  290. package/bundled-skills/sre-dashboards/SKILL.md +143 -0
  291. package/bundled-skills/ssh-configuration/SKILL.md +324 -0
  292. package/bundled-skills/ssl-tls-management/SKILL.md +428 -0
  293. package/bundled-skills/ssl-tls-management/references/details.md +99 -0
  294. package/bundled-skills/startup-it-troubleshooting/SKILL.md +415 -0
  295. package/bundled-skills/supply-chain-attack-recon/SKILL.md +453 -0
  296. package/bundled-skills/supply-chain-attack-recon/references/details.md +258 -0
  297. package/bundled-skills/systemd-services/SKILL.md +379 -0
  298. package/bundled-skills/terraform-aws/SKILL.md +125 -0
  299. package/bundled-skills/terraform-azure/SKILL.md +415 -0
  300. package/bundled-skills/terraform-azure/references/details.md +231 -0
  301. package/bundled-skills/terraform-gcp/SKILL.md +369 -0
  302. package/bundled-skills/threat-modeling/SKILL.md +487 -0
  303. package/bundled-skills/understand-project-yylo/SKILL.md +62 -0
  304. package/bundled-skills/user-management/SKILL.md +383 -0
  305. package/bundled-skills/using-agent-skills/SKILL.md +220 -0
  306. package/bundled-skills/vector-database-ops/SKILL.md +300 -0
  307. package/bundled-skills/vendor-management/SKILL.md +439 -0
  308. package/bundled-skills/vendor-management/references/details.md +109 -0
  309. package/bundled-skills/vercel-deployments/SKILL.md +296 -0
  310. package/bundled-skills/vllm-server/SKILL.md +236 -0
  311. package/bundled-skills/vmware-vcenter-attack/SKILL.md +412 -0
  312. package/bundled-skills/vpn-setup/SKILL.md +452 -0
  313. package/bundled-skills/vulnerability-scanning/SKILL.md +448 -0
  314. package/bundled-skills/waf-setup/SKILL.md +354 -0
  315. package/bundled-skills/waf-setup/references/details.md +211 -0
  316. package/bundled-skills/weather-model-data-fetching/SKILL.md +277 -0
  317. package/bundled-skills/weather-observation-fetching/SKILL.md +246 -0
  318. package/bundled-skills/web2-recon/SKILL.md +440 -0
  319. package/bundled-skills/web2-recon/references/details.md +319 -0
  320. package/bundled-skills/web3-audit/SKILL.md +445 -0
  321. package/bundled-skills/web3-audit/references/details.md +224 -0
  322. package/bundled-skills/wiki-yylo/SKILL.md +114 -0
  323. package/bundled-skills/windows-hardening/SKILL.md +454 -0
  324. package/bundled-skills/windows-hardening/references/details.md +204 -0
  325. package/bundled-skills/windows-server/SKILL.md +318 -0
  326. package/bundled-skills/workflow-yylo/SKILL.md +107 -0
  327. package/bundled-skills/zero-trust/SKILL.md +461 -0
  328. package/package.json +1 -1
  329. package/skills_index.json +6924 -0
@@ -0,0 +1,426 @@
1
+ ---
2
+ name: feature-flags
3
+ description: Implement feature flags for progressive feature rollout using LaunchDarkly,
4
+ Unleash, or custom solutions.
5
+ category: devops
6
+ risk: critical
7
+ source: https://github.com/BagelHole/DevOps-Security-Agent-Skills
8
+ source_repo: BagelHole/DevOps-Security-Agent-Skills
9
+ source_type: community
10
+ date_added: '2026-09-20'
11
+ license: MIT
12
+ license_source: https://github.com/BagelHole/DevOps-Security-Agent-Skills/blob/main/LICENSE
13
+ compatibility: Requires the relevant platform CLIs (kubectl, helm, terraform, git,
14
+ CI runners) and authorized access to the target environment. Docs-only; helper scripts
15
+ and templates not bundled.
16
+ metadata:
17
+ author: devops-skills
18
+ version: '1.0'
19
+ ---
20
+
21
+ # Feature Flags
22
+
23
+ Control feature releases and enable progressive rollout with feature flag systems.
24
+
25
+ ## Prerequisites
26
+
27
+ - Application code access
28
+ - Feature flag service or self-hosted solution
29
+ - Basic understanding of deployment patterns
30
+
31
+ ## Feature Flag Types
32
+
33
+ | Type | Purpose | Example |
34
+ |------|---------|---------|
35
+ | Release | Control feature visibility | New checkout flow |
36
+ | Experiment | A/B testing | Button color test |
37
+ | Ops | Runtime configuration | Rate limiting |
38
+ | Permission | User access control | Premium features |
39
+ | Kill Switch | Emergency disable | Third-party integration |
40
+
41
+ ## LaunchDarkly
42
+
43
+ ### SDK Setup (Node.js)
44
+
45
+ ```javascript
46
+ const LaunchDarkly = require('launchdarkly-node-server-sdk');
47
+
48
+ const client = LaunchDarkly.init(process.env.LAUNCHDARKLY_SDK_KEY);
49
+
50
+ await client.waitForInitialization();
51
+
52
+ // Evaluate flag
53
+ const user = {
54
+ key: 'user-123',
55
+ email: 'user@example.com',
56
+ custom: {
57
+ plan: 'premium',
58
+ company: 'acme'
59
+ }
60
+ };
61
+
62
+ const showNewFeature = await client.variation('new-checkout', user, false);
63
+
64
+ if (showNewFeature) {
65
+ // New feature code
66
+ } else {
67
+ // Existing code
68
+ }
69
+ ```
70
+
71
+ ### React SDK
72
+
73
+ ```javascript
74
+ import { withLDProvider, useFlags, useLDClient } from 'launchdarkly-react-client-sdk';
75
+
76
+ // Provider setup
77
+ export default withLDProvider({
78
+ clientSideID: 'your-client-side-id',
79
+ user: {
80
+ key: 'user-123',
81
+ email: 'user@example.com'
82
+ }
83
+ })(App);
84
+
85
+ // Using flags in component
86
+ function FeatureComponent() {
87
+ const { newCheckout, experimentVariant } = useFlags();
88
+ const ldClient = useLDClient();
89
+
90
+ // Track events
91
+ const handleClick = () => {
92
+ ldClient.track('checkout-started');
93
+ };
94
+
95
+ if (newCheckout) {
96
+ return <NewCheckout onClick={handleClick} />;
97
+ }
98
+ return <OldCheckout onClick={handleClick} />;
99
+ }
100
+ ```
101
+
102
+ ### Targeting Rules
103
+
104
+ ```yaml
105
+ # LaunchDarkly targeting configuration
106
+ flag: new-checkout
107
+ targeting:
108
+ # Individual users
109
+ targets:
110
+ - variation: true
111
+ values: ['user-123', 'user-456']
112
+
113
+ # Rules
114
+ rules:
115
+ # Beta users
116
+ - variation: true
117
+ clauses:
118
+ - attribute: email
119
+ op: endsWith
120
+ values: ['@company.com']
121
+
122
+ # Premium plan
123
+ - variation: true
124
+ clauses:
125
+ - attribute: plan
126
+ op: in
127
+ values: ['premium', 'enterprise']
128
+
129
+ # Percentage rollout
130
+ - variation: true
131
+ rollout:
132
+ variations:
133
+ - variation: true
134
+ weight: 20000 # 20%
135
+ - variation: false
136
+ weight: 80000 # 80%
137
+
138
+ # Default
139
+ fallthrough:
140
+ variation: false
141
+ ```
142
+
143
+ ## Unleash
144
+
145
+ ### Server Setup
146
+
147
+ ```yaml
148
+ # docker-compose.yml
149
+ version: '3.8'
150
+
151
+ services:
152
+ unleash:
153
+ image: unleashorg/unleash-server:latest
154
+ ports:
155
+ - "4242:4242"
156
+ environment:
157
+ - DATABASE_URL=postgres://postgres:password@db/unleash
158
+ - DATABASE_SSL=false
159
+ depends_on:
160
+ - db
161
+
162
+ db:
163
+ image: postgres:15
164
+ environment:
165
+ - POSTGRES_PASSWORD=password
166
+ - POSTGRES_DB=unleash
167
+ volumes:
168
+ - postgres-data:/var/lib/postgresql/data
169
+
170
+ volumes:
171
+ postgres-data:
172
+ ```
173
+
174
+ ### SDK Setup (Node.js)
175
+
176
+ ```javascript
177
+ const { initialize } = require('unleash-client');
178
+
179
+ const unleash = initialize({
180
+ url: 'http://localhost:4242/api',
181
+ appName: 'my-app',
182
+ customHeaders: {
183
+ Authorization: 'your-api-token'
184
+ }
185
+ });
186
+
187
+ unleash.on('ready', () => {
188
+ // Check feature
189
+ const isEnabled = unleash.isEnabled('new-checkout');
190
+
191
+ // With context
192
+ const context = {
193
+ userId: 'user-123',
194
+ properties: {
195
+ plan: 'premium'
196
+ }
197
+ };
198
+
199
+ const isEnabledForUser = unleash.isEnabled('new-checkout', context);
200
+
201
+ // Get variant
202
+ const variant = unleash.getVariant('experiment-flag', context);
203
+ console.log(variant.name); // 'control' or 'treatment'
204
+ });
205
+ ```
206
+
207
+ ### Activation Strategies
208
+
209
+ ```yaml
210
+ # Standard strategies
211
+ strategies:
212
+ - name: default
213
+ # On/off for everyone
214
+
215
+ - name: userWithId
216
+ parameters:
217
+ userIds: 'user-1,user-2,user-3'
218
+
219
+ - name: gradualRolloutUserId
220
+ parameters:
221
+ percentage: 25
222
+ groupId: 'new-feature'
223
+
224
+ - name: gradualRolloutRandom
225
+ parameters:
226
+ percentage: 50
227
+
228
+ - name: flexibleRollout
229
+ parameters:
230
+ rollout: 30
231
+ stickiness: userId
232
+ groupId: 'checkout-exp'
233
+ ```
234
+
235
+ ## Custom Implementation
236
+
237
+ ### Database-Backed Flags
238
+
239
+ ```python
240
+ # models.py
241
+ from django.db import models
242
+
243
+ class FeatureFlag(models.Model):
244
+ name = models.CharField(max_length=100, unique=True)
245
+ enabled = models.BooleanField(default=False)
246
+ rollout_percentage = models.IntegerField(default=0)
247
+ allowed_users = models.JSONField(default=list)
248
+ rules = models.JSONField(default=dict)
249
+ created_at = models.DateTimeField(auto_now_add=True)
250
+ updated_at = models.DateTimeField(auto_now=True)
251
+
252
+ # service.py
253
+ import hashlib
254
+
255
+ class FeatureFlagService:
256
+ def __init__(self):
257
+ self._cache = {}
258
+
259
+ def is_enabled(self, flag_name, user_id=None, context=None):
260
+ flag = self._get_flag(flag_name)
261
+
262
+ if not flag or not flag.enabled:
263
+ return False
264
+
265
+ # Check user allowlist
266
+ if user_id and user_id in flag.allowed_users:
267
+ return True
268
+
269
+ # Check rules
270
+ if context and self._evaluate_rules(flag.rules, context):
271
+ return True
272
+
273
+ # Check percentage rollout
274
+ if flag.rollout_percentage > 0 and user_id:
275
+ return self._is_in_rollout(flag_name, user_id, flag.rollout_percentage)
276
+
277
+ return flag.rollout_percentage == 100
278
+
279
+ def _is_in_rollout(self, flag_name, user_id, percentage):
280
+ hash_input = f"{flag_name}:{user_id}"
281
+ hash_value = int(hashlib.md5(hash_input.encode()).hexdigest(), 16)
282
+ return (hash_value % 100) < percentage
283
+
284
+ def _evaluate_rules(self, rules, context):
285
+ for rule in rules.get('rules', []):
286
+ if self._evaluate_rule(rule, context):
287
+ return True
288
+ return False
289
+ ```
290
+
291
+ ### Redis-Backed Flags
292
+
293
+ ```python
294
+ import redis
295
+ import json
296
+
297
+ class RedisFeatureFlags:
298
+ def __init__(self, redis_url):
299
+ self.redis = redis.from_url(redis_url)
300
+ self.prefix = 'feature_flag:'
301
+
302
+ def set_flag(self, name, config):
303
+ key = f"{self.prefix}{name}"
304
+ self.redis.set(key, json.dumps(config))
305
+
306
+ def is_enabled(self, name, user_id=None):
307
+ key = f"{self.prefix}{name}"
308
+ data = self.redis.get(key)
309
+
310
+ if not data:
311
+ return False
312
+
313
+ config = json.loads(data)
314
+
315
+ if not config.get('enabled', False):
316
+ return False
317
+
318
+ # User allowlist
319
+ if user_id in config.get('users', []):
320
+ return True
321
+
322
+ # Percentage rollout
323
+ percentage = config.get('percentage', 0)
324
+ if percentage == 100:
325
+ return True
326
+
327
+ if percentage > 0 and user_id:
328
+ return self._hash_user(name, user_id) < percentage
329
+
330
+ return False
331
+
332
+ def _hash_user(self, flag, user_id):
333
+ import hashlib
334
+ hash_input = f"{flag}:{user_id}"
335
+ return int(hashlib.sha256(hash_input.encode()).hexdigest(), 16) % 100
336
+ ```
337
+
338
+ ## Testing with Feature Flags
339
+
340
+ ### Unit Testing
341
+
342
+ ```javascript
343
+ // Jest mocking
344
+ jest.mock('launchdarkly-node-server-sdk', () => ({
345
+ init: jest.fn(() => ({
346
+ waitForInitialization: jest.fn().mockResolvedValue(undefined),
347
+ variation: jest.fn()
348
+ }))
349
+ }));
350
+
351
+ describe('Checkout', () => {
352
+ it('shows new checkout when flag enabled', async () => {
353
+ const ldClient = require('launchdarkly-node-server-sdk').init();
354
+ ldClient.variation.mockResolvedValue(true);
355
+
356
+ const result = await renderCheckout(user);
357
+ expect(result).toContain('NewCheckout');
358
+ });
359
+
360
+ it('shows old checkout when flag disabled', async () => {
361
+ const ldClient = require('launchdarkly-node-server-sdk').init();
362
+ ldClient.variation.mockResolvedValue(false);
363
+
364
+ const result = await renderCheckout(user);
365
+ expect(result).toContain('OldCheckout');
366
+ });
367
+ });
368
+ ```
369
+
370
+ ### Integration Testing
371
+
372
+ ```python
373
+ # pytest fixtures
374
+ import pytest
375
+
376
+ @pytest.fixture
377
+ def feature_flags():
378
+ """Provide controllable feature flags for testing."""
379
+ flags = {}
380
+
381
+ class TestFlags:
382
+ def set(self, name, value):
383
+ flags[name] = value
384
+
385
+ def is_enabled(self, name, **kwargs):
386
+ return flags.get(name, False)
387
+
388
+ return TestFlags()
389
+
390
+ def test_new_checkout(feature_flags):
391
+ feature_flags.set('new-checkout', True)
392
+
393
+ response = client.get('/checkout')
394
+ assert 'new-checkout-form' in response.content
395
+ ```
396
+
397
+
398
+ ## Contents
399
+
400
+ - [Monitoring and Analytics](references/details.md)
401
+ - [Common Issues](references/details.md)
402
+ - [Best Practices](references/details.md)
403
+ - [Related Skills](references/details.md)
404
+
405
+ ## When to Use This Skill
406
+
407
+ Use this skill when:
408
+ - Implementing gradual feature rollouts
409
+ - Enabling trunk-based development
410
+ - Running A/B tests and experiments
411
+ - Managing feature lifecycles
412
+ - Implementing kill switches for production
413
+
414
+ ## Limitations
415
+
416
+ - Guidance executes against real environments: confirm target, blast radius, and rollback plan before applying anything.
417
+ - Never deploy to production without explicit approval. Docs-only import: upstream scripts and templates not bundled.
418
+
419
+ ### Example
420
+
421
+ ```bash
422
+ git status && git diff --stat
423
+ kubectl diff -f manifest.yaml
424
+ ```
425
+
426
+ > Adapted from [BagelHole/DevOps-Security-Agent-Skills](https://github.com/BagelHole/DevOps-Security-Agent-Skills) (MIT); frontmatter, When to Use/Limitations, and safety boundaries added for upstream compliance. Docs-only import: helper scripts and templates not bundled.
@@ -0,0 +1,86 @@
1
+ # Details (moved from SKILL.md)
2
+
3
+ > Extended reference content for `feature-flags`, kept under `references/` so the entrypoint stays within the audit budget.
4
+
5
+ ## Monitoring and Analytics
6
+
7
+ ### Flag Usage Tracking
8
+
9
+ ```javascript
10
+ // Track flag evaluations
11
+ const flagMetrics = {
12
+ evaluations: new Map(),
13
+
14
+ track(flagName, variation, user) {
15
+ const key = `${flagName}:${variation}`;
16
+ const count = this.evaluations.get(key) || 0;
17
+ this.evaluations.set(key, count + 1);
18
+
19
+ // Send to analytics
20
+ analytics.track('feature_flag_evaluated', {
21
+ flag: flagName,
22
+ variation: variation,
23
+ userId: user.key
24
+ });
25
+ }
26
+ };
27
+ ```
28
+
29
+ ### Stale Flag Detection
30
+
31
+ ```python
32
+ from datetime import datetime, timedelta
33
+
34
+ def detect_stale_flags():
35
+ """Find flags that haven't been evaluated recently."""
36
+ stale_threshold = timedelta(days=30)
37
+ now = datetime.utcnow()
38
+
39
+ stale_flags = []
40
+ for flag in FeatureFlag.objects.all():
41
+ if flag.last_evaluated:
42
+ age = now - flag.last_evaluated
43
+ if age > stale_threshold:
44
+ stale_flags.append({
45
+ 'name': flag.name,
46
+ 'last_evaluated': flag.last_evaluated,
47
+ 'age_days': age.days
48
+ })
49
+
50
+ return stale_flags
51
+ ```
52
+
53
+
54
+ ## Common Issues
55
+
56
+ ### Issue: Inconsistent Flag Evaluation
57
+ **Problem**: Same user sees different variations
58
+ **Solution**: Use consistent hashing, check caching strategy
59
+
60
+ ### Issue: Flag Debt Accumulation
61
+ **Problem**: Too many old flags in codebase
62
+ **Solution**: Implement flag lifecycle, regular cleanup sprints
63
+
64
+ ### Issue: Performance Impact
65
+ **Problem**: Flag evaluation slowing requests
66
+ **Solution**: Use local caching, batch evaluations
67
+
68
+
69
+ ## Best Practices
70
+
71
+ - Use consistent naming conventions
72
+ - Document flag purpose and owner
73
+ - Set expiration dates for temporary flags
74
+ - Implement flag lifecycle management
75
+ - Use gradual rollouts (not 0→100)
76
+ - Monitor flag evaluation metrics
77
+ - Clean up old flags regularly
78
+ - Test both variations in CI
79
+
80
+
81
+ ## Related Skills
82
+
83
+ - blue-green-deploy (`blue-green-deploy`) - Deployment strategies
84
+ - git-workflow (`git-workflow`) - Trunk-based development
85
+ - alerting-oncall (`alerting-oncall`) - Monitoring rollouts
86
+