opencode-skills-collection 4.0.68 → 4.0.70

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 (491) hide show
  1. package/bundled-skills/.antigravity-install-manifest.json +304 -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/api-integration-architect/SKILL.md +241 -0
  19. package/bundled-skills/apify-generate-output-schema/SKILL.md +438 -0
  20. package/bundled-skills/apify-integration-development/SKILL.md +168 -0
  21. package/bundled-skills/apify-integration-development/references/ai-framework-package.md +158 -0
  22. package/bundled-skills/apify-integration-development/references/ai-harness-plugin.md +192 -0
  23. package/bundled-skills/apify-integration-development/references/sdk-integration.md +236 -0
  24. package/bundled-skills/apify-integration-development/references/workflow-automation.md +163 -0
  25. package/bundled-skills/apk-redteam-pipeline/SKILL.md +446 -0
  26. package/bundled-skills/architecture-review/README.md +42 -0
  27. package/bundled-skills/architecture-review/SKILL.md +77 -0
  28. package/bundled-skills/architecture-review/examples.md +11 -0
  29. package/bundled-skills/architecture-review/reference/best-practices.md +7 -0
  30. package/bundled-skills/architecture-review/reference/capabilities.md +20 -0
  31. package/bundled-skills/architecture-review/reference/fallbacks.md +11 -0
  32. package/bundled-skills/architecture-review/reference/graph.md +15 -0
  33. package/bundled-skills/architecture-review/reference/mcp.md +14 -0
  34. package/bundled-skills/architecture-review/reference/workflow.md +15 -0
  35. package/bundled-skills/architecture-review/templates/architecture-review.md +21 -0
  36. package/bundled-skills/argocd-gitops/SKILL.md +469 -0
  37. package/bundled-skills/arm-templates/SKILL.md +438 -0
  38. package/bundled-skills/arm-templates/references/details.md +64 -0
  39. package/bundled-skills/asset-inventory/SKILL.md +412 -0
  40. package/bundled-skills/asset-inventory/references/details.md +127 -0
  41. package/bundled-skills/audit-logging/SKILL.md +476 -0
  42. package/bundled-skills/aws-cloudtrail/SKILL.md +486 -0
  43. package/bundled-skills/aws-cost-optimization/SKILL.md +331 -0
  44. package/bundled-skills/aws-ec2/SKILL.md +426 -0
  45. package/bundled-skills/aws-ecs-fargate/SKILL.md +388 -0
  46. package/bundled-skills/aws-iam/SKILL.md +463 -0
  47. package/bundled-skills/aws-lambda/SKILL.md +428 -0
  48. package/bundled-skills/aws-rds/SKILL.md +380 -0
  49. package/bundled-skills/aws-s3/SKILL.md +434 -0
  50. package/bundled-skills/aws-secrets-manager/SKILL.md +486 -0
  51. package/bundled-skills/aws-vpc/SKILL.md +436 -0
  52. package/bundled-skills/azure-ai-document-intelligence-ts/SKILL.md +1 -1
  53. package/bundled-skills/azure-aks/SKILL.md +423 -0
  54. package/bundled-skills/azure-devops/SKILL.md +457 -0
  55. package/bundled-skills/azure-functions-devsec/SKILL.md +436 -0
  56. package/bundled-skills/azure-keyvault/SKILL.md +455 -0
  57. package/bundled-skills/azure-keyvault/references/details.md +83 -0
  58. package/bundled-skills/azure-monitor-audit/SKILL.md +379 -0
  59. package/bundled-skills/azure-networking/SKILL.md +448 -0
  60. package/bundled-skills/azure-networking/references/details.md +135 -0
  61. package/bundled-skills/azure-sql/SKILL.md +413 -0
  62. package/bundled-skills/azure-sql/references/details.md +113 -0
  63. package/bundled-skills/azure-vms/SKILL.md +402 -0
  64. package/bundled-skills/azure-vms/references/details.md +134 -0
  65. package/bundled-skills/backup-recovery/SKILL.md +388 -0
  66. package/bundled-skills/bb-methodology/SKILL.md +451 -0
  67. package/bundled-skills/bb-methodology/references/details.md +120 -0
  68. package/bundled-skills/block-storage/SKILL.md +371 -0
  69. package/bundled-skills/blue-green-deploy/SKILL.md +453 -0
  70. package/bundled-skills/blue-green-deploy/references/details.md +90 -0
  71. package/bundled-skills/bug-bounty/SKILL.md +447 -0
  72. package/bundled-skills/bug-bounty/references/details.md +1316 -0
  73. package/bundled-skills/bugcrowd-reporting/SKILL.md +351 -0
  74. package/bundled-skills/business-continuity/SKILL.md +463 -0
  75. package/bundled-skills/career-ops/SKILL.md +186 -0
  76. package/bundled-skills/cdn-setup/SKILL.md +374 -0
  77. package/bundled-skills/change-management/SKILL.md +438 -0
  78. package/bundled-skills/change-management/references/details.md +105 -0
  79. package/bundled-skills/circleci/SKILL.md +475 -0
  80. package/bundled-skills/cis-benchmarks/SKILL.md +150 -0
  81. package/bundled-skills/cloudflare-pages/SKILL.md +318 -0
  82. package/bundled-skills/cloudflare-r2/SKILL.md +353 -0
  83. package/bundled-skills/cloudflare-workers/SKILL.md +415 -0
  84. package/bundled-skills/cloudflare-zero-trust/SKILL.md +361 -0
  85. package/bundled-skills/cloudformation/SKILL.md +461 -0
  86. package/bundled-skills/code-review-sensei/SKILL.md +177 -0
  87. package/bundled-skills/codebase-onboarding/README.md +42 -0
  88. package/bundled-skills/codebase-onboarding/SKILL.md +77 -0
  89. package/bundled-skills/codebase-onboarding/examples.md +11 -0
  90. package/bundled-skills/codebase-onboarding/reference/best-practices.md +7 -0
  91. package/bundled-skills/codebase-onboarding/reference/capabilities.md +20 -0
  92. package/bundled-skills/codebase-onboarding/reference/fallbacks.md +11 -0
  93. package/bundled-skills/codebase-onboarding/reference/graph.md +15 -0
  94. package/bundled-skills/codebase-onboarding/reference/mcp.md +14 -0
  95. package/bundled-skills/codebase-onboarding/reference/workflow.md +15 -0
  96. package/bundled-skills/codebase-onboarding/templates/repository-onboarding.md +21 -0
  97. package/bundled-skills/connection-auth-rules/SKILL.md +199 -0
  98. package/bundled-skills/connection-auth-rules/fetch_schema.py +320 -0
  99. package/bundled-skills/constraint-driven-development/SKILL.md +335 -0
  100. package/bundled-skills/constraint-driven-development/references/floor-guard.md +99 -0
  101. package/bundled-skills/container-hardening/SKILL.md +126 -0
  102. package/bundled-skills/container-registries/SKILL.md +435 -0
  103. package/bundled-skills/container-scanning/SKILL.md +416 -0
  104. package/bundled-skills/convex-backend/SKILL.md +338 -0
  105. package/bundled-skills/dast-scanning/SKILL.md +437 -0
  106. package/bundled-skills/database-backups/SKILL.md +425 -0
  107. package/bundled-skills/datadog/SKILL.md +487 -0
  108. package/bundled-skills/dependency-analysis/README.md +42 -0
  109. package/bundled-skills/dependency-analysis/SKILL.md +76 -0
  110. package/bundled-skills/dependency-analysis/examples.md +11 -0
  111. package/bundled-skills/dependency-analysis/reference/best-practices.md +7 -0
  112. package/bundled-skills/dependency-analysis/reference/capabilities.md +20 -0
  113. package/bundled-skills/dependency-analysis/reference/fallbacks.md +11 -0
  114. package/bundled-skills/dependency-analysis/reference/graph.md +15 -0
  115. package/bundled-skills/dependency-analysis/reference/mcp.md +14 -0
  116. package/bundled-skills/dependency-analysis/reference/workflow.md +15 -0
  117. package/bundled-skills/dependency-analysis/templates/dependency-review.md +21 -0
  118. package/bundled-skills/dependency-scanning/SKILL.md +457 -0
  119. package/bundled-skills/devcontainers-nix/SKILL.md +416 -0
  120. package/bundled-skills/devops-pipeline-builder/SKILL.md +200 -0
  121. package/bundled-skills/disaster-recovery/SKILL.md +374 -0
  122. package/bundled-skills/disaster-recovery/references/details.md +219 -0
  123. package/bundled-skills/dns-management/SKILL.md +375 -0
  124. package/bundled-skills/docker-compose/SKILL.md +482 -0
  125. package/bundled-skills/docker-management/SKILL.md +426 -0
  126. package/bundled-skills/eas-app-stores/SKILL.md +197 -0
  127. package/bundled-skills/eas-app-stores/agents/openai.yaml +4 -0
  128. package/bundled-skills/eas-app-stores/references/app-store-metadata.md +497 -0
  129. package/bundled-skills/eas-app-stores/references/ios-app-store.md +376 -0
  130. package/bundled-skills/eas-app-stores/references/native-ios.md +167 -0
  131. package/bundled-skills/eas-app-stores/references/play-store.md +244 -0
  132. package/bundled-skills/eas-app-stores/references/testflight.md +62 -0
  133. package/bundled-skills/eas-app-stores/references/workflows.md +120 -0
  134. package/bundled-skills/eas-hosting/SKILL.md +448 -0
  135. package/bundled-skills/eas-hosting/agents/openai.yaml +4 -0
  136. package/bundled-skills/eas-observe/SKILL.md +75 -0
  137. package/bundled-skills/eas-observe/agents/openai.yaml +4 -0
  138. package/bundled-skills/eas-observe/references/metrics.md +98 -0
  139. package/bundled-skills/eas-observe/references/queries.md +403 -0
  140. package/bundled-skills/eas-observe/references/setup.md +476 -0
  141. package/bundled-skills/eas-observe/references/third-party.md +136 -0
  142. package/bundled-skills/eas-simulator/SKILL.md +251 -0
  143. package/bundled-skills/eas-simulator/agents/openai.yaml +4 -0
  144. package/bundled-skills/eas-simulator/references/controllers.md +135 -0
  145. package/bundled-skills/eas-simulator/references/run-your-app.md +240 -0
  146. package/bundled-skills/eas-simulator/references/troubleshooting.md +47 -0
  147. package/bundled-skills/eas-workflows/SKILL.md +119 -0
  148. package/bundled-skills/eas-workflows/agents/openai.yaml +4 -0
  149. package/bundled-skills/eas-workflows/scripts/fetch.js +109 -0
  150. package/bundled-skills/ebpf-observability/SKILL.md +436 -0
  151. package/bundled-skills/ebpf-observability/references/details.md +542 -0
  152. package/bundled-skills/elk-stack/SKILL.md +487 -0
  153. package/bundled-skills/enterprise-vpn-attack/SKILL.md +395 -0
  154. package/bundled-skills/evidence-hygiene/SKILL.md +404 -0
  155. package/bundled-skills/expo-animation/LICENSE +21 -0
  156. package/bundled-skills/expo-animation/RECIPES.md +385 -0
  157. package/bundled-skills/expo-animation/SKILL.md +295 -0
  158. package/bundled-skills/expo-animation/agents/openai.yaml +4 -0
  159. package/bundled-skills/fact-check-x-unified/SKILL.md +178 -0
  160. package/bundled-skills/fact-check-x-unified/agents/openai.yaml +4 -0
  161. package/bundled-skills/fact-check-x-unified/references/acceptance-criteria.md +44 -0
  162. package/bundled-skills/fact-check-x-unified/references/contracts.md +39 -0
  163. package/bundled-skills/fact-check-x-unified/scripts/common.py +31 -0
  164. package/bundled-skills/fact-check-x-unified/scripts/fact_check_x.py +1832 -0
  165. package/bundled-skills/fact-check-x-unified/scripts/trusted_search_config.py +324 -0
  166. package/bundled-skills/fact-check-x-unified/tests/anchor_downgrade_test.py +90 -0
  167. package/bundled-skills/fact-check-x-unified/tests/multi_platform_test.py +369 -0
  168. package/bundled-skills/fact-check-x-unified/tests/smoke_test.py +740 -0
  169. package/bundled-skills/fact-check-x-unified/tests/stage_checkpoint_test.py +103 -0
  170. package/bundled-skills/fact-check-x-unified/tests/trusted_search_config_test.py +156 -0
  171. package/bundled-skills/feature-flags/SKILL.md +426 -0
  172. package/bundled-skills/feature-flags/references/details.md +86 -0
  173. package/bundled-skills/fedramp-compliance/SKILL.md +453 -0
  174. package/bundled-skills/firebase-app-platform/SKILL.md +381 -0
  175. package/bundled-skills/firewall-config/SKILL.md +479 -0
  176. package/bundled-skills/gcp-audit-logs/SKILL.md +452 -0
  177. package/bundled-skills/gcp-audit-logs/references/details.md +56 -0
  178. package/bundled-skills/gcp-cloud-functions/SKILL.md +284 -0
  179. package/bundled-skills/gcp-cloud-sql/SKILL.md +277 -0
  180. package/bundled-skills/gcp-compute/SKILL.md +319 -0
  181. package/bundled-skills/gcp-gke/SKILL.md +307 -0
  182. package/bundled-skills/gcp-networking/SKILL.md +293 -0
  183. package/bundled-skills/gcp-secret-manager/SKILL.md +421 -0
  184. package/bundled-skills/gcp-secret-manager/references/details.md +131 -0
  185. package/bundled-skills/gdpr-compliance/SKILL.md +451 -0
  186. package/bundled-skills/gdpr-compliance/references/details.md +145 -0
  187. package/bundled-skills/geo-audit/SKILL.md +368 -0
  188. package/bundled-skills/geo-brand-mentions/SKILL.md +68 -0
  189. package/bundled-skills/geo-brand-mentions/references/details.md +471 -0
  190. package/bundled-skills/geo-citability/SKILL.md +350 -0
  191. package/bundled-skills/geo-compare/SKILL.md +340 -0
  192. package/bundled-skills/geo-content/SKILL.md +383 -0
  193. package/bundled-skills/geo-crawlers/SKILL.md +408 -0
  194. package/bundled-skills/geo-llmstxt/SKILL.md +464 -0
  195. package/bundled-skills/geo-platform-optimizer/SKILL.md +314 -0
  196. package/bundled-skills/geo-proposal/SKILL.md +378 -0
  197. package/bundled-skills/geo-prospect/SKILL.md +225 -0
  198. package/bundled-skills/geo-report/SKILL.md +436 -0
  199. package/bundled-skills/geo-report-pdf/SKILL.md +157 -0
  200. package/bundled-skills/geo-schema/SKILL.md +408 -0
  201. package/bundled-skills/geo-technical/SKILL.md +78 -0
  202. package/bundled-skills/geo-technical/references/details.md +543 -0
  203. package/bundled-skills/git-workflow/SKILL.md +460 -0
  204. package/bundled-skills/github-actions/SKILL.md +368 -0
  205. package/bundled-skills/gitlab-ci/SKILL.md +340 -0
  206. package/bundled-skills/gpt-taste/SKILL.md +8 -1
  207. package/bundled-skills/gpu-kubernetes-operations/SKILL.md +468 -0
  208. package/bundled-skills/gpu-server-management/SKILL.md +236 -0
  209. package/bundled-skills/hashicorp-vault/SKILL.md +408 -0
  210. package/bundled-skills/helm-charts/SKILL.md +469 -0
  211. package/bundled-skills/hf-cli/SKILL.md +263 -0
  212. package/bundled-skills/hipaa-compliance/SKILL.md +451 -0
  213. package/bundled-skills/huggingface-community-evals/SKILL.md +228 -0
  214. package/bundled-skills/huggingface-community-evals/examples/.env.example +3 -0
  215. package/bundled-skills/huggingface-community-evals/examples/USAGE_EXAMPLES.md +101 -0
  216. package/bundled-skills/huggingface-community-evals/scripts/inspect_eval_uv.py +104 -0
  217. package/bundled-skills/huggingface-community-evals/scripts/inspect_vllm_uv.py +306 -0
  218. package/bundled-skills/huggingface-community-evals/scripts/lighteval_vllm_uv.py +297 -0
  219. package/bundled-skills/huggingface-datasets/SKILL.md +130 -0
  220. package/bundled-skills/hunt-aspnet/SKILL.md +321 -0
  221. package/bundled-skills/hunt-ato/SKILL.md +184 -0
  222. package/bundled-skills/hunt-auth-bypass/SKILL.md +426 -0
  223. package/bundled-skills/hunt-auth-bypass/references/details.md +80 -0
  224. package/bundled-skills/hunt-brute-force/SKILL.md +341 -0
  225. package/bundled-skills/hunt-business-logic/SKILL.md +281 -0
  226. package/bundled-skills/hunt-cache-poison/SKILL.md +382 -0
  227. package/bundled-skills/hunt-captcha-bypass/SKILL.md +136 -0
  228. package/bundled-skills/hunt-cicd/SKILL.md +311 -0
  229. package/bundled-skills/hunt-clickjacking/SKILL.md +110 -0
  230. package/bundled-skills/hunt-cors/SKILL.md +335 -0
  231. package/bundled-skills/hunt-dom/SKILL.md +323 -0
  232. package/bundled-skills/hunt-exceptional-conditions/SKILL.md +111 -0
  233. package/bundled-skills/hunt-file-upload/SKILL.md +202 -0
  234. package/bundled-skills/hunt-fintech-graphql/SKILL.md +289 -0
  235. package/bundled-skills/hunt-forgot-password/SKILL.md +114 -0
  236. package/bundled-skills/hunt-grpc/SKILL.md +317 -0
  237. package/bundled-skills/hunt-host-header/SKILL.md +309 -0
  238. package/bundled-skills/hunt-html-injection/SKILL.md +106 -0
  239. package/bundled-skills/hunt-http-smuggling/SKILL.md +129 -0
  240. package/bundled-skills/hunt-http-smuggling/references/phase2h-smuggling-cachepoison.md +177 -0
  241. package/bundled-skills/hunt-idor/SKILL.md +434 -0
  242. package/bundled-skills/hunt-jwt-crypto/SKILL.md +221 -0
  243. package/bundled-skills/hunt-k8s/SKILL.md +337 -0
  244. package/bundled-skills/hunt-laravel/SKILL.md +255 -0
  245. package/bundled-skills/hunt-ldap/SKILL.md +351 -0
  246. package/bundled-skills/hunt-lfi/SKILL.md +311 -0
  247. package/bundled-skills/hunt-llm-ai/SKILL.md +289 -0
  248. package/bundled-skills/hunt-mfa-bypass/SKILL.md +177 -0
  249. package/bundled-skills/hunt-misc/SKILL.md +378 -0
  250. package/bundled-skills/hunt-nextjs/SKILL.md +299 -0
  251. package/bundled-skills/hunt-nodejs/SKILL.md +263 -0
  252. package/bundled-skills/hunt-nosqli/SKILL.md +210 -0
  253. package/bundled-skills/hunt-ntlm-info/SKILL.md +314 -0
  254. package/bundled-skills/hunt-oauth/SKILL.md +459 -0
  255. package/bundled-skills/hunt-open-redirect/SKILL.md +223 -0
  256. package/bundled-skills/hunt-race-condition/SKILL.md +381 -0
  257. package/bundled-skills/hunt-race-condition/references/details.md +159 -0
  258. package/bundled-skills/hunt-rag-vector/SKILL.md +212 -0
  259. package/bundled-skills/hunt-rce/SKILL.md +444 -0
  260. package/bundled-skills/hunt-rce/references/details.md +110 -0
  261. package/bundled-skills/hunt-saml/SKILL.md +156 -0
  262. package/bundled-skills/hunt-session/SKILL.md +342 -0
  263. package/bundled-skills/hunt-shadow-api/SKILL.md +198 -0
  264. package/bundled-skills/hunt-source-leak/SKILL.md +345 -0
  265. package/bundled-skills/hunt-spa-api/SKILL.md +163 -0
  266. package/bundled-skills/hunt-springboot/SKILL.md +285 -0
  267. package/bundled-skills/hunt-sqli/SKILL.md +466 -0
  268. package/bundled-skills/hunt-ssrf/SKILL.md +396 -0
  269. package/bundled-skills/hunt-ssrf/references/details.md +179 -0
  270. package/bundled-skills/hunt-ssti/SKILL.md +163 -0
  271. package/bundled-skills/hunt-subdomain/SKILL.md +379 -0
  272. package/bundled-skills/hunt-tls-network/SKILL.md +399 -0
  273. package/bundled-skills/hunt-xxe/SKILL.md +466 -0
  274. package/bundled-skills/i-have-adhd/SKILL.md +170 -0
  275. package/bundled-skills/identity-access-management/SKILL.md +382 -0
  276. package/bundled-skills/identity-access-management/references/details.md +524 -0
  277. package/bundled-skills/incident-management/SKILL.md +484 -0
  278. package/bundled-skills/incident-response/SKILL.md +448 -0
  279. package/bundled-skills/incident-response/references/details.md +113 -0
  280. package/bundled-skills/interview-me/SKILL.md +248 -0
  281. package/bundled-skills/iso27001-compliance/SKILL.md +460 -0
  282. package/bundled-skills/jenkins/SKILL.md +462 -0
  283. package/bundled-skills/jev-social/SKILL.md +182 -0
  284. package/bundled-skills/jev-use/SKILL.md +158 -0
  285. package/bundled-skills/kubernetes-hardening/SKILL.md +154 -0
  286. package/bundled-skills/kubernetes-ops/SKILL.md +449 -0
  287. package/bundled-skills/kubernetes-ops/references/details.md +108 -0
  288. package/bundled-skills/kustomize/SKILL.md +478 -0
  289. package/bundled-skills/linux-administration/SKILL.md +367 -0
  290. package/bundled-skills/linux-hardening/SKILL.md +154 -0
  291. package/bundled-skills/llm-app-security/SKILL.md +389 -0
  292. package/bundled-skills/llm-app-security/references/details.md +674 -0
  293. package/bundled-skills/llm-caching/SKILL.md +334 -0
  294. package/bundled-skills/llm-cost-optimization/SKILL.md +311 -0
  295. package/bundled-skills/llm-fine-tuning/SKILL.md +329 -0
  296. package/bundled-skills/llm-gateway/SKILL.md +282 -0
  297. package/bundled-skills/llm-inference-scaling/SKILL.md +286 -0
  298. package/bundled-skills/llmops-platform-engineering/SKILL.md +472 -0
  299. package/bundled-skills/load-balancing/SKILL.md +403 -0
  300. package/bundled-skills/loki-logging/SKILL.md +479 -0
  301. package/bundled-skills/longbridge-derivatives/SKILL.md +117 -0
  302. package/bundled-skills/longbridge-derivatives/references/option.md +36 -0
  303. package/bundled-skills/longbridge-derivatives/references/options-advanced.md +101 -0
  304. package/bundled-skills/longbridge-derivatives/references/options-pnl.md +74 -0
  305. package/bundled-skills/longbridge-derivatives/references/options-strategy.md +82 -0
  306. package/bundled-skills/longbridge-derivatives/references/options-volatility.md +70 -0
  307. package/bundled-skills/longbridge-derivatives/references/warrant.md +12 -0
  308. package/bundled-skills/longbridge-quant/SKILL.md +151 -0
  309. package/bundled-skills/longbridge-quant/references/correlation.md +51 -0
  310. package/bundled-skills/longbridge-quant/references/execution-model.md +68 -0
  311. package/bundled-skills/longbridge-quant/references/factor-research.md +95 -0
  312. package/bundled-skills/longbridge-quant/references/factor-screen.md +101 -0
  313. package/bundled-skills/longbridge-quant/references/hedging.md +136 -0
  314. package/bundled-skills/longbridge-quant/references/ml-strategy.md +77 -0
  315. package/bundled-skills/longbridge-quant/references/multifactor.md +68 -0
  316. package/bundled-skills/longbridge-quant/references/pairs-trading.md +61 -0
  317. package/bundled-skills/longbridge-quant/references/quant-cli.md +133 -0
  318. package/bundled-skills/longbridge-quant/references/quant-stats.md +150 -0
  319. package/bundled-skills/longbridge-quant/references/seasonality.md +50 -0
  320. package/bundled-skills/longbridge-quant/references/strategy-optimizer.md +68 -0
  321. package/bundled-skills/longbridge-quant/references/volatility-strategy.md +52 -0
  322. package/bundled-skills/longbridge-research/SKILL.md +187 -0
  323. package/bundled-skills/longbridge-research/references/company-profile.md +96 -0
  324. package/bundled-skills/longbridge-research/references/company-tearsheet.md +82 -0
  325. package/bundled-skills/longbridge-research/references/competitive-analysis.md +81 -0
  326. package/bundled-skills/longbridge-research/references/consensus.md +92 -0
  327. package/bundled-skills/longbridge-research/references/coverage-initiation.md +76 -0
  328. package/bundled-skills/longbridge-research/references/defi-yield.md +60 -0
  329. package/bundled-skills/longbridge-research/references/finance-calendar.md +165 -0
  330. package/bundled-skills/longbridge-research/references/financial-planning.md +77 -0
  331. package/bundled-skills/longbridge-research/references/forecast-eps.md +39 -0
  332. package/bundled-skills/longbridge-research/references/fund-holder.md +44 -0
  333. package/bundled-skills/longbridge-research/references/hkipo-analysis.md +101 -0
  334. package/bundled-skills/longbridge-research/references/industry-peers.md +46 -0
  335. package/bundled-skills/longbridge-research/references/industry-rank.md +62 -0
  336. package/bundled-skills/longbridge-research/references/insider-trades.md +48 -0
  337. package/bundled-skills/longbridge-research/references/institution-rating.md +62 -0
  338. package/bundled-skills/longbridge-research/references/investment-ideas.md +69 -0
  339. package/bundled-skills/longbridge-research/references/investment-proposal.md +95 -0
  340. package/bundled-skills/longbridge-research/references/investors.md +87 -0
  341. package/bundled-skills/longbridge-research/references/onchain.md +70 -0
  342. package/bundled-skills/longbridge-research/references/post-investment.md +76 -0
  343. package/bundled-skills/longbridge-research/references/shareholder.md +72 -0
  344. package/bundled-skills/longbridge-research/references/short-positions.md +50 -0
  345. package/bundled-skills/longbridge-research/references/short-trades.md +50 -0
  346. package/bundled-skills/longbridge-research/references/stock-research.md +61 -0
  347. package/bundled-skills/longbridge-research/references/thesis-tracker.md +64 -0
  348. package/bundled-skills/m365-entra-attack/SKILL.md +423 -0
  349. package/bundled-skills/mac-mini-llm-lab/SKILL.md +350 -0
  350. package/bundled-skills/makepad-2-0-animation/SKILL.md +318 -0
  351. package/bundled-skills/makepad-2-0-animation/references/animator-reference.md +433 -0
  352. package/bundled-skills/makepad-2-0-dsl/SKILL.md +492 -0
  353. package/bundled-skills/makepad-2-0-dsl/references/dsl-syntax-reference.md +511 -0
  354. package/bundled-skills/makepad-2-0-dsl/references/extended-guide.md +56 -0
  355. package/bundled-skills/makepad-2-0-dsl/references/property-system.md +757 -0
  356. package/bundled-skills/makepad-2-0-events/SKILL.md +497 -0
  357. package/bundled-skills/makepad-2-0-events/references/event-patterns.md +802 -0
  358. package/bundled-skills/makepad-2-0-events/references/extended-guide.md +590 -0
  359. package/bundled-skills/makepad-2-0-layout/SKILL.md +499 -0
  360. package/bundled-skills/makepad-2-0-layout/references/extended-guide.md +243 -0
  361. package/bundled-skills/makepad-2-0-layout/references/layout-patterns.md +881 -0
  362. package/bundled-skills/makepad-2-0-widgets/SKILL.md +261 -0
  363. package/bundled-skills/makepad-2-0-widgets/references/widget-advanced.md +648 -0
  364. package/bundled-skills/makepad-2-0-widgets/references/widget-catalog.md +547 -0
  365. package/bundled-skills/mcp-server-security/SKILL.md +356 -0
  366. package/bundled-skills/mcp-server-security/references/details.md +745 -0
  367. package/bundled-skills/mdm-device-management/SKILL.md +404 -0
  368. package/bundled-skills/mdm-device-management/references/details.md +410 -0
  369. package/bundled-skills/meeting-distiller-pro/SKILL.md +120 -0
  370. package/bundled-skills/meme-coin-audit/SKILL.md +402 -0
  371. package/bundled-skills/mid-engagement-ir-detection/SKILL.md +377 -0
  372. package/bundled-skills/model-registry-governance/SKILL.md +452 -0
  373. package/bundled-skills/model-serving-kubernetes/SKILL.md +339 -0
  374. package/bundled-skills/model-supply-chain-security/SKILL.md +427 -0
  375. package/bundled-skills/mongodb/SKILL.md +436 -0
  376. package/bundled-skills/monte-carlo-analyze-root-cause/SKILL.md +12 -1
  377. package/bundled-skills/monte-carlo-asset-health/SKILL.md +12 -1
  378. package/bundled-skills/monte-carlo-context-detection/SKILL.md +170 -0
  379. package/bundled-skills/monte-carlo-context-detection/references/signal-definitions.md +46 -0
  380. package/bundled-skills/multi-tenant-llm-hosting/SKILL.md +435 -0
  381. package/bundled-skills/multi-tenant-llm-hosting/references/details.md +211 -0
  382. package/bundled-skills/mysql/SKILL.md +390 -0
  383. package/bundled-skills/new-relic/SKILL.md +472 -0
  384. package/bundled-skills/nfs-storage/SKILL.md +356 -0
  385. package/bundled-skills/object-storage/SKILL.md +378 -0
  386. package/bundled-skills/offensive-osint/SKILL.md +443 -0
  387. package/bundled-skills/okta-attack/SKILL.md +436 -0
  388. package/bundled-skills/ollama-stack/SKILL.md +379 -0
  389. package/bundled-skills/openclaw-deployment-hardening/SKILL.md +135 -0
  390. package/bundled-skills/openclaw-local-mac-mini/SKILL.md +426 -0
  391. package/bundled-skills/openclaw-local-mac-mini/references/details.md +221 -0
  392. package/bundled-skills/openclaw-security-hardening/SKILL.md +135 -0
  393. package/bundled-skills/openshift/SKILL.md +485 -0
  394. package/bundled-skills/opentelemetry/SKILL.md +438 -0
  395. package/bundled-skills/opentelemetry/references/details.md +78 -0
  396. package/bundled-skills/opentofu-migration/SKILL.md +349 -0
  397. package/bundled-skills/osint-methodology/SKILL.md +460 -0
  398. package/bundled-skills/osint-methodology/references/details.md +1350 -0
  399. package/bundled-skills/pci-dss-compliance/SKILL.md +446 -0
  400. package/bundled-skills/penetration-testing/SKILL.md +152 -0
  401. package/bundled-skills/performance-tuning/SKILL.md +381 -0
  402. package/bundled-skills/planetscale/SKILL.md +297 -0
  403. package/bundled-skills/platform-engineering/SKILL.md +348 -0
  404. package/bundled-skills/platform-engineering/references/details.md +944 -0
  405. package/bundled-skills/podman/SKILL.md +405 -0
  406. package/bundled-skills/policy-as-code/SKILL.md +434 -0
  407. package/bundled-skills/policy-as-code/references/details.md +204 -0
  408. package/bundled-skills/postgresql-devsec/SKILL.md +378 -0
  409. package/bundled-skills/prometheus-grafana/SKILL.md +469 -0
  410. package/bundled-skills/prompt-injection-defense/SKILL.md +483 -0
  411. package/bundled-skills/rag-infrastructure/SKILL.md +269 -0
  412. package/bundled-skills/rag-observability-evals/SKILL.md +444 -0
  413. package/bundled-skills/rag-observability-evals/references/details.md +92 -0
  414. package/bundled-skills/recon-scope-triage/SKILL.md +128 -0
  415. package/bundled-skills/redis/SKILL.md +421 -0
  416. package/bundled-skills/redteam-report-template/SKILL.md +370 -0
  417. package/bundled-skills/remotion-captions/SKILL.md +57 -0
  418. package/bundled-skills/remotion-captions/agents/openai.yaml +7 -0
  419. package/bundled-skills/remotion-captions/assets/remotion-icon.svg +4 -0
  420. package/bundled-skills/remotion-captions/display-captions.md +190 -0
  421. package/bundled-skills/remotion-captions/import-srt-captions.md +73 -0
  422. package/bundled-skills/remotion-captions/transcribe-captions.md +70 -0
  423. package/bundled-skills/remotion-create/SKILL.md +106 -0
  424. package/bundled-skills/remotion-create/agents/openai.yaml +7 -0
  425. package/bundled-skills/remotion-create/assets/remotion-icon.svg +4 -0
  426. package/bundled-skills/remotion-create/tailwind.md +11 -0
  427. package/bundled-skills/remotion-create/video-layout.md +9 -0
  428. package/bundled-skills/remotion-docs/SKILL.md +67 -0
  429. package/bundled-skills/remotion-docs/agents/openai.yaml +7 -0
  430. package/bundled-skills/remotion-docs/assets/remotion-icon.svg +4 -0
  431. package/bundled-skills/remotion-interactivity/SKILL.md +270 -0
  432. package/bundled-skills/remotion-interactivity/agents/openai.yaml +7 -0
  433. package/bundled-skills/remotion-interactivity/assets/remotion-icon.svg +4 -0
  434. package/bundled-skills/remotion-render/SKILL.md +48 -0
  435. package/bundled-skills/remotion-render/agents/openai.yaml +7 -0
  436. package/bundled-skills/remotion-render/assets/remotion-icon.svg +4 -0
  437. package/bundled-skills/remotion-render/transparent-videos.md +106 -0
  438. package/bundled-skills/report-writing/SKILL.md +426 -0
  439. package/bundled-skills/report-writing/references/details.md +187 -0
  440. package/bundled-skills/reverse-proxy/SKILL.md +420 -0
  441. package/bundled-skills/runbook-creation/SKILL.md +438 -0
  442. package/bundled-skills/runbook-creation/references/details.md +71 -0
  443. package/bundled-skills/saas-pricing-strategist/SKILL.md +169 -0
  444. package/bundled-skills/saas-security-posture/SKILL.md +415 -0
  445. package/bundled-skills/sast-scanning/SKILL.md +444 -0
  446. package/bundled-skills/sbom-supply-chain/SKILL.md +433 -0
  447. package/bundled-skills/score-eval/SKILL.md +35 -0
  448. package/bundled-skills/security-arsenal/SKILL.md +446 -0
  449. package/bundled-skills/security-arsenal/references/details.md +540 -0
  450. package/bundled-skills/security-automation/SKILL.md +146 -0
  451. package/bundled-skills/semantic-versioning/SKILL.md +434 -0
  452. package/bundled-skills/semantic-versioning/references/details.md +83 -0
  453. package/bundled-skills/service-mesh/SKILL.md +422 -0
  454. package/bundled-skills/soc2-compliance/SKILL.md +409 -0
  455. package/bundled-skills/sops-encryption/SKILL.md +124 -0
  456. package/bundled-skills/sre-dashboards/SKILL.md +143 -0
  457. package/bundled-skills/ssh-configuration/SKILL.md +324 -0
  458. package/bundled-skills/ssl-tls-management/SKILL.md +428 -0
  459. package/bundled-skills/ssl-tls-management/references/details.md +99 -0
  460. package/bundled-skills/startup-it-troubleshooting/SKILL.md +415 -0
  461. package/bundled-skills/supply-chain-attack-recon/SKILL.md +453 -0
  462. package/bundled-skills/supply-chain-attack-recon/references/details.md +258 -0
  463. package/bundled-skills/systemd-services/SKILL.md +379 -0
  464. package/bundled-skills/terraform-aws/SKILL.md +125 -0
  465. package/bundled-skills/terraform-azure/SKILL.md +415 -0
  466. package/bundled-skills/terraform-azure/references/details.md +231 -0
  467. package/bundled-skills/terraform-gcp/SKILL.md +369 -0
  468. package/bundled-skills/threat-modeling/SKILL.md +487 -0
  469. package/bundled-skills/user-management/SKILL.md +383 -0
  470. package/bundled-skills/using-agent-skills/SKILL.md +220 -0
  471. package/bundled-skills/vector-database-ops/SKILL.md +300 -0
  472. package/bundled-skills/vendor-management/SKILL.md +439 -0
  473. package/bundled-skills/vendor-management/references/details.md +109 -0
  474. package/bundled-skills/vercel-deployments/SKILL.md +296 -0
  475. package/bundled-skills/vllm-server/SKILL.md +236 -0
  476. package/bundled-skills/vmware-vcenter-attack/SKILL.md +412 -0
  477. package/bundled-skills/vpn-setup/SKILL.md +452 -0
  478. package/bundled-skills/vulnerability-scanning/SKILL.md +448 -0
  479. package/bundled-skills/waf-setup/SKILL.md +354 -0
  480. package/bundled-skills/waf-setup/references/details.md +211 -0
  481. package/bundled-skills/web2-recon/SKILL.md +440 -0
  482. package/bundled-skills/web2-recon/references/details.md +319 -0
  483. package/bundled-skills/web3-audit/SKILL.md +445 -0
  484. package/bundled-skills/web3-audit/references/details.md +224 -0
  485. package/bundled-skills/windows-hardening/SKILL.md +454 -0
  486. package/bundled-skills/windows-hardening/references/details.md +204 -0
  487. package/bundled-skills/windows-server/SKILL.md +318 -0
  488. package/bundled-skills/writing-guidelines/SKILL.md +60 -0
  489. package/bundled-skills/zero-trust/SKILL.md +461 -0
  490. package/package.json +1 -1
  491. package/skills_index.json +7874 -277
@@ -0,0 +1,381 @@
1
+ ---
2
+ name: performance-tuning
3
+ description: Optimize Linux system performance. Configure kernel parameters, analyze
4
+ bottlenecks, and tune resources. Use when improving system performance.
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 OS/platform tooling and privileged access where
14
+ noted. Docs-only; helper scripts and templates not bundled.
15
+ metadata:
16
+ author: devops-skills
17
+ version: '1.0'
18
+ ---
19
+
20
+ # Performance Tuning
21
+
22
+ Optimize Linux system performance through kernel parameter tuning, I/O scheduler selection, memory management, CPU governor configuration, and benchmarking. Covers methodology, real sysctl settings, and tool-based validation.
23
+
24
+ ## When to Use
25
+
26
+ - Server experiencing high latency, throughput bottlenecks, or resource exhaustion
27
+ - Preparing infrastructure for high-traffic events or load tests
28
+ - Tuning a database server, web server, or application host for production
29
+ - Diagnosing whether a bottleneck is CPU, memory, disk I/O, or network
30
+ - Establishing baseline performance metrics before and after changes
31
+ - Configuring kernel parameters for containers, VMs, or bare-metal hosts
32
+
33
+ ## Prerequisites
34
+
35
+ - Root or sudo access on the target system
36
+ - `sysstat` package installed (provides `sar`, `iostat`, `mpstat`)
37
+ - `linux-tools` or `perf` package for CPU profiling
38
+ - Benchmarking tools: `fio` (disk), `sysbench` (CPU/memory), `iperf3` (network)
39
+ - Baseline metrics collected before making any changes
40
+
41
+ ## Performance Analysis Methodology
42
+
43
+ Always follow this order:
44
+
45
+ 1. **Collect baseline** -- measure current performance with tools
46
+ 2. **Identify bottleneck** -- determine if CPU, memory, I/O, or network
47
+ 3. **Change one parameter** -- apply a single tuning change
48
+ 4. **Measure impact** -- re-run the same benchmark
49
+ 5. **Document** -- record the change and its effect
50
+ 6. **Iterate or revert** -- keep the change if beneficial, revert if not
51
+
52
+ ## System Monitoring Tools
53
+
54
+ ```bash
55
+ # CPU and process monitoring
56
+ top # Interactive process viewer
57
+ htop # Enhanced interactive viewer
58
+ mpstat -P ALL 2 # Per-CPU utilization every 2 seconds
59
+ pidstat -u 2 # Per-process CPU usage
60
+
61
+ # Memory monitoring
62
+ free -h # Memory summary
63
+ vmstat 2 # Virtual memory stats every 2 seconds
64
+ # Columns: r=runnable, b=blocked, si/so=swap in/out, bi/bo=block I/O
65
+
66
+ # Disk I/O monitoring
67
+ iostat -xz 2 # Extended disk stats every 2 seconds
68
+ # Key columns: %util, await (latency), r/s, w/s
69
+ iotop -oP # Show processes doing I/O
70
+
71
+ # Network monitoring
72
+ sar -n DEV 2 # Network interface stats
73
+ ss -s # Socket summary
74
+ nstat # Network counters
75
+
76
+ # CPU profiling (requires perf)
77
+ perf top # Real-time function-level CPU profiling
78
+ perf stat -a sleep 10 # System-wide counters for 10 seconds
79
+ perf record -g -a sleep 30 # Record 30 seconds of call stacks
80
+ perf report # Analyze recorded data
81
+
82
+ # One-liner: check all major resources
83
+ echo "=== CPU ===" && mpstat 1 1 && echo "=== MEM ===" && free -h && echo "=== DISK ===" && iostat -x 1 1 && echo "=== NET ===" && ss -s
84
+ ```
85
+
86
+ ## Sysctl Kernel Parameter Tuning
87
+
88
+ ### Network Tuning
89
+
90
+ ```bash
91
+ # /etc/sysctl.d/60-network-performance.conf
92
+
93
+ # Increase the maximum socket receive/send buffer sizes
94
+ net.core.rmem_max = 134217728
95
+ net.core.wmem_max = 134217728
96
+ net.core.rmem_default = 1048576
97
+ net.core.wmem_default = 1048576
98
+
99
+ # TCP buffer auto-tuning (min, default, max in bytes)
100
+ net.ipv4.tcp_rmem = 4096 1048576 134217728
101
+ net.ipv4.tcp_wmem = 4096 1048576 134217728
102
+
103
+ # Increase connection backlog for high-traffic servers
104
+ net.core.somaxconn = 65535
105
+ net.ipv4.tcp_max_syn_backlog = 65535
106
+ net.core.netdev_max_backlog = 65535
107
+
108
+ # Enable TCP fast open (client and server)
109
+ net.ipv4.tcp_fastopen = 3
110
+
111
+ # Reuse TIME_WAIT sockets for new connections
112
+ net.ipv4.tcp_tw_reuse = 1
113
+
114
+ # Increase the range of ephemeral ports
115
+ net.ipv4.ip_local_port_range = 1024 65535
116
+
117
+ # TCP keepalive tuning (detect dead connections faster)
118
+ net.ipv4.tcp_keepalive_time = 120
119
+ net.ipv4.tcp_keepalive_intvl = 30
120
+ net.ipv4.tcp_keepalive_probes = 3
121
+
122
+ # Disable slow start after idle (keeps congestion window open)
123
+ net.ipv4.tcp_slow_start_after_idle = 0
124
+
125
+ # Enable BBR congestion control (requires kernel 4.9+)
126
+ net.core.default_qdisc = fq
127
+ net.ipv4.tcp_congestion_control = bbr
128
+ ```
129
+
130
+ ### Memory Tuning
131
+
132
+ ```bash
133
+ # /etc/sysctl.d/60-memory-performance.conf
134
+
135
+ # Reduce swappiness (0-100, lower = less swap usage)
136
+ # 10 for general servers, 1 for database servers
137
+ vm.swappiness = 10
138
+
139
+ # Dirty page ratios (controls when dirty data is flushed to disk)
140
+ # Lower values = more frequent, smaller writes (better for SSDs)
141
+ vm.dirty_ratio = 20
142
+ vm.dirty_background_ratio = 5
143
+
144
+ # For large-memory systems writing to fast storage
145
+ # vm.dirty_ratio = 40
146
+ # vm.dirty_background_ratio = 10
147
+
148
+ # Increase inotify limits (for apps watching many files)
149
+ fs.inotify.max_user_watches = 524288
150
+ fs.inotify.max_user_instances = 1024
151
+
152
+ # Maximum number of open file descriptors system-wide
153
+ fs.file-max = 2097152
154
+
155
+ # Virtual memory overcommit
156
+ # 0 = heuristic (default), 1 = always overcommit, 2 = never overcommit
157
+ vm.overcommit_memory = 0
158
+
159
+ # For Redis or similar in-memory stores, use:
160
+ # vm.overcommit_memory = 1
161
+
162
+ # Disable Transparent Huge Pages if it causes latency spikes (common with databases)
163
+ # Done via boot parameter or runtime:
164
+ # echo madvise > /sys/kernel/mm/transparent_hugepage/enabled
165
+ ```
166
+
167
+ ### Applying Sysctl Changes
168
+
169
+ ```bash
170
+ # Apply all sysctl files
171
+ sysctl --system
172
+
173
+ # Apply a specific file
174
+ sysctl -p /etc/sysctl.d/60-network-performance.conf
175
+
176
+ # Set a parameter temporarily (lost on reboot)
177
+ sysctl -w vm.swappiness=10
178
+
179
+ # Verify a parameter
180
+ sysctl vm.swappiness
181
+ sysctl net.ipv4.tcp_congestion_control
182
+ ```
183
+
184
+ ## I/O Scheduler Configuration
185
+
186
+ ```bash
187
+ # Check the current scheduler for a device
188
+ cat /sys/block/sda/queue/scheduler
189
+ # Output example: [mq-deadline] none kyber bfq
190
+
191
+ # Set the scheduler temporarily
192
+ echo mq-deadline > /sys/block/sda/queue/scheduler # Good for databases
193
+ echo none > /sys/block/nvme0n1/queue/scheduler # Best for NVMe SSDs
194
+ echo bfq > /sys/block/sda/queue/scheduler # Good for interactive desktop
195
+
196
+ # Scheduler recommendations:
197
+ # NVMe SSD: none (noop) -- minimal overhead, hardware handles scheduling
198
+ # SATA SSD: mq-deadline -- provides fairness with low latency
199
+ # HDD: mq-deadline -- prevents starvation, good for databases
200
+ # Desktop: bfq -- prioritizes interactive I/O
201
+
202
+ # Make persistent via udev rule
203
+ cat <<'EOF' > /etc/udev/rules.d/60-io-scheduler.rules
204
+ # Set mq-deadline for rotational (HDD) devices
205
+ ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="1", ATTR{queue/scheduler}="mq-deadline"
206
+ # Set none for non-rotational (SSD/NVMe) devices
207
+ ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="none"
208
+ ACTION=="add|change", KERNEL=="nvme[0-9]*", ATTR{queue/scheduler}="none"
209
+ EOF
210
+
211
+ udevadm control --reload-rules
212
+
213
+ # Tune read-ahead for sequential workloads (database sequential scans)
214
+ blockdev --setrahead 4096 /dev/sda # 4096 sectors = 2 MB
215
+
216
+ # Enable TRIM for SSDs (weekly via systemd timer)
217
+ systemctl enable --now fstrim.timer
218
+ fstrim -av # Manual run
219
+ ```
220
+
221
+ ## CPU Governor Configuration
222
+
223
+ ```bash
224
+ # Check available governors
225
+ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
226
+ # Output: performance powersave schedutil
227
+
228
+ # Check current governor
229
+ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
230
+
231
+ # Set all CPUs to performance mode (maximum frequency)
232
+ for cpu in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do
233
+ echo performance > "$cpu"
234
+ done
235
+
236
+ # Set using cpupower (if installed)
237
+ cpupower frequency-set -g performance
238
+
239
+ # Governor recommendations:
240
+ # Server (production): performance -- max frequency, lowest latency
241
+ # Server (general): schedutil -- kernel-driven dynamic scaling
242
+ # Laptop / idle server: powersave -- minimize power consumption
243
+
244
+ # Make persistent via systemd service
245
+ cat <<'EOF' > /etc/systemd/system/cpu-governor.service
246
+ [Unit]
247
+ Description=Set CPU governor to performance
248
+
249
+ [Service]
250
+ Type=oneshot
251
+ ExecStart=/usr/bin/cpupower frequency-set -g performance
252
+ RemainAfterExit=yes
253
+
254
+ [Install]
255
+ WantedBy=multi-user.target
256
+ EOF
257
+
258
+ systemctl enable --now cpu-governor
259
+
260
+ # Disable CPU boost (turbo) if consistent latency is needed
261
+ echo 1 > /sys/devices/system/cpu/intel_pstate/no_turbo
262
+ ```
263
+
264
+ ## Benchmarking Tools
265
+
266
+ ### fio -- Disk I/O Benchmarking
267
+
268
+ ```bash
269
+ # Install fio
270
+ apt install -y fio # Debian/Ubuntu
271
+ dnf install -y fio # RHEL/CentOS
272
+
273
+ # Sequential read test (simulates backup reads)
274
+ fio --name=seq-read --ioengine=libaio --direct=1 --rw=read \
275
+ --bs=1M --numjobs=4 --size=1G --runtime=60 --time_based --group_reporting
276
+
277
+ # Sequential write test
278
+ fio --name=seq-write --ioengine=libaio --direct=1 --rw=write \
279
+ --bs=1M --numjobs=4 --size=1G --runtime=60 --time_based --group_reporting
280
+
281
+ # Random read (4K blocks -- simulates database IOPS)
282
+ fio --name=rand-read --ioengine=libaio --direct=1 --rw=randread \
283
+ --bs=4k --numjobs=16 --iodepth=64 --size=1G --runtime=60 --time_based --group_reporting
284
+
285
+ # Random write (4K blocks)
286
+ fio --name=rand-write --ioengine=libaio --direct=1 --rw=randwrite \
287
+ --bs=4k --numjobs=16 --iodepth=64 --size=1G --runtime=60 --time_based --group_reporting
288
+
289
+ # Mixed random read/write (70/30 -- typical database workload)
290
+ fio --name=mixed --ioengine=libaio --direct=1 --rw=randrw --rwmixread=70 \
291
+ --bs=4k --numjobs=8 --iodepth=32 --size=1G --runtime=60 --time_based --group_reporting
292
+ ```
293
+
294
+ ### sysbench -- CPU and Memory Benchmarking
295
+
296
+ ```bash
297
+ # Install: apt install -y sysbench (Debian) / dnf install -y sysbench (RHEL)
298
+
299
+ # CPU benchmark
300
+ sysbench cpu --threads=4 --time=30 run
301
+
302
+ # Memory benchmark
303
+ sysbench memory --threads=4 --time=30 --memory-block-size=1K --memory-total-size=100G run
304
+ ```
305
+
306
+ ### iperf3 -- Network Benchmarking
307
+
308
+ ```bash
309
+ # Install iperf3
310
+ apt install -y iperf3
311
+
312
+ # Start server on one host
313
+ iperf3 -s
314
+
315
+ # Run client test from another host
316
+ iperf3 -c <server-ip> -t 30 -P 4 # 30 seconds, 4 parallel streams
317
+
318
+ # Test with UDP (measure packet loss)
319
+ iperf3 -c <server-ip> -u -b 1G -t 30
320
+
321
+ # Reverse mode (server sends to client)
322
+ iperf3 -c <server-ip> -R -t 30
323
+ ```
324
+
325
+ ## Quick-Reference Tuning Profiles
326
+
327
+ ### Web Server (nginx/Apache)
328
+
329
+ ```bash
330
+ # /etc/sysctl.d/60-webserver.conf
331
+ net.core.somaxconn = 65535
332
+ net.ipv4.tcp_max_syn_backlog = 65535
333
+ net.ipv4.tcp_tw_reuse = 1
334
+ net.ipv4.tcp_fastopen = 3
335
+ net.ipv4.ip_local_port_range = 1024 65535
336
+ net.core.default_qdisc = fq
337
+ net.ipv4.tcp_congestion_control = bbr
338
+ fs.file-max = 2097152
339
+ vm.swappiness = 10
340
+ ```
341
+
342
+ ### Database Server (PostgreSQL/MySQL)
343
+
344
+ ```bash
345
+ # /etc/sysctl.d/60-database.conf
346
+ vm.swappiness = 1
347
+ vm.dirty_ratio = 15
348
+ vm.dirty_background_ratio = 3
349
+ vm.overcommit_memory = 2
350
+ vm.overcommit_ratio = 80
351
+ net.core.somaxconn = 4096
352
+ fs.file-max = 2097152
353
+ # Disable THP for databases
354
+ # echo never > /sys/kernel/mm/transparent_hugepage/enabled
355
+ ```
356
+
357
+ ## Troubleshooting
358
+
359
+ | Symptom | Diagnostic Command | Common Fix |
360
+ |---|---|---|
361
+ | High CPU, no obvious process | `perf top`, `mpstat -P ALL 2` | Check for kernel-level issues: softirqs, interrupts |
362
+ | High load avg, low CPU usage | `vmstat 2` (check `b` column) | I/O bottleneck: tune scheduler, check disk health |
363
+ | System swapping heavily | `free -h`, `vmstat 2` (check si/so) | Reduce `vm.swappiness`, add RAM, find memory leak |
364
+ | Disk latency spikes | `iostat -x 2` (check await) | Switch I/O scheduler, reduce dirty ratio, add SSD |
365
+ | "Too many open files" error | `cat /proc/sys/fs/file-nr` | Increase `fs.file-max` and `LimitNOFILE` |
366
+ | Network throughput low | `iperf3 -c <server>`, `ethtool` | Increase buffer sizes, enable BBR, check MTU |
367
+ | Application timeout under load | `ss -s`, `sysctl net.core.somaxconn` | Increase `somaxconn` and `tcp_max_syn_backlog` |
368
+ | Inconsistent latency | Check CPU governor | Set governor to `performance`, disable turbo boost |
369
+
370
+ ## Related Skills
371
+
372
+ - `linux-administration` -- General system monitoring and management
373
+ - `systemd-services` -- Resource limits via cgroups in unit files
374
+ - `block-storage` -- Storage-level performance (LVM, RAID, filesystems)
375
+ - `nfs-storage` -- NFS-specific performance tuning
376
+
377
+ ## Limitations
378
+
379
+ - Infrastructure commands can disrupt services: confirm target host/scope and have backups/snapshots before mutating state.
380
+ - Docs-only import: upstream scripts and templates not bundled.
381
+
@@ -0,0 +1,297 @@
1
+ ---
2
+ name: planetscale
3
+ description: Operate MySQL-compatible databases on PlanetScale with branching workflows,
4
+ safe migrations, and production rollouts.
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 OS/platform tooling and privileged access where
14
+ noted. Docs-only; helper scripts and templates not bundled.
15
+ metadata:
16
+ author: devops-skills
17
+ version: '1.0'
18
+ ---
19
+
20
+ # PlanetScale
21
+
22
+ Use PlanetScale for serverless MySQL-compatible databases with non-blocking schema change workflows built on Vitess.
23
+
24
+ ## When to Use
25
+
26
+ - You need a managed MySQL-compatible database with zero-downtime migrations.
27
+ - Your team wants Git-like branching for schema development.
28
+ - You are building a serverless or edge application that benefits from connection pooling.
29
+ - You need horizontal sharding without managing Vitess directly.
30
+
31
+ ## Prerequisites
32
+
33
+ - A PlanetScale account (free tier available).
34
+ - The `pscale` CLI installed locally.
35
+ - Node.js 18+ if using Prisma or other ORM integrations.
36
+
37
+ ## Install the pscale CLI
38
+
39
+ ```bash
40
+ # macOS
41
+ brew install planetscale/tap/pscale
42
+
43
+ # Linux (deb)
44
+ curl -fsSL https://github.com/planetscale/cli/releases/latest/download/pscale_linux_amd64.deb -o pscale.deb
45
+ sudo dpkg -i pscale.deb
46
+
47
+ # Verify installation
48
+ pscale version
49
+
50
+ # Authenticate
51
+ pscale auth login
52
+ ```
53
+
54
+ ## Create and Manage Databases
55
+
56
+ ```bash
57
+ # Create a new database
58
+ pscale database create my-app --region us-east
59
+
60
+ # List databases
61
+ pscale database list
62
+
63
+ # Show database info
64
+ pscale database show my-app
65
+
66
+ # Delete a database (destructive)
67
+ pscale database delete my-app
68
+ ```
69
+
70
+ ## Branching Workflow
71
+
72
+ PlanetScale branches work like Git branches for your database schema. The `main` branch is the production branch by default.
73
+
74
+ ```bash
75
+ # Create a development branch from main
76
+ pscale branch create my-app add-users-table
77
+
78
+ # List all branches
79
+ pscale branch list my-app
80
+
81
+ # Open a shell on the branch to apply schema changes
82
+ pscale shell my-app add-users-table
83
+ ```
84
+
85
+ ### Apply Schema Changes on a Branch
86
+
87
+ ```sql
88
+ -- Inside the pscale shell on the development branch
89
+ CREATE TABLE users (
90
+ id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
91
+ email VARCHAR(255) NOT NULL,
92
+ name VARCHAR(255) NOT NULL,
93
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
94
+ updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
95
+ UNIQUE KEY idx_users_email (email)
96
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
97
+
98
+ CREATE TABLE orders (
99
+ id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
100
+ user_id BIGINT NOT NULL,
101
+ total DECIMAL(10,2) NOT NULL DEFAULT 0.00,
102
+ status ENUM('pending','paid','shipped','cancelled') DEFAULT 'pending',
103
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
104
+ KEY idx_orders_user_id (user_id),
105
+ KEY idx_orders_status (status)
106
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
107
+ ```
108
+
109
+ > PlanetScale does not enforce foreign keys at the database level. Use application-level constraints or Vitess-level routing rules instead.
110
+
111
+ ## Deploy Requests
112
+
113
+ Deploy requests are the pull-request equivalent for database schemas. They show a diff, run linting, and merge non-blocking into production.
114
+
115
+ ```bash
116
+ # Create a deploy request from branch to main
117
+ pscale deploy-request create my-app add-users-table
118
+
119
+ # List open deploy requests
120
+ pscale deploy-request list my-app
121
+
122
+ # Show diff for a deploy request
123
+ pscale deploy-request diff my-app 1
124
+
125
+ # Deploy (merge) the request
126
+ pscale deploy-request deploy my-app 1
127
+
128
+ # Close without deploying
129
+ pscale deploy-request close my-app 1
130
+
131
+ # Delete the branch after successful deploy
132
+ pscale branch delete my-app add-users-table
133
+ ```
134
+
135
+ ## Connection Strings and Proxying
136
+
137
+ ```bash
138
+ # Create a password (connection credential) for a branch
139
+ pscale password create my-app main production-creds
140
+
141
+ # Output includes host, username, and password for the connection string:
142
+ # mysql://USERNAME:PASSWORD@HOST/my-app?sslmode=verify_identity
143
+
144
+ # Proxy a branch to localhost for local development (no password needed)
145
+ pscale connect my-app add-users-table --port 3306
146
+ ```
147
+
148
+ ### Environment Variable Pattern
149
+
150
+ ```bash
151
+ # .env (local development using pscale connect)
152
+ DATABASE_URL="mysql://root@127.0.0.1:3306/my-app"
153
+
154
+ # .env.production (using PlanetScale connection string)
155
+ DATABASE_URL="mysql://USERNAME:PASSWORD@us-east.connect.psdb.cloud/my-app?sslaccept=strict"
156
+ ```
157
+
158
+ ## Prisma Integration
159
+
160
+ ```prisma
161
+ // prisma/schema.prisma
162
+ datasource db {
163
+ provider = "mysql"
164
+ url = env("DATABASE_URL")
165
+ relationMode = "prisma" // required — PlanetScale does not support foreign keys
166
+ }
167
+
168
+ model User {
169
+ id Int @id @default(autoincrement())
170
+ email String @unique
171
+ name String
172
+ orders Order[]
173
+ createdAt DateTime @default(now())
174
+ updatedAt DateTime @updatedAt
175
+ }
176
+
177
+ model Order {
178
+ id Int @id @default(autoincrement())
179
+ userId Int
180
+ total Decimal @db.Decimal(10, 2)
181
+ status String @default("pending")
182
+ user User @relation(fields: [userId], references: [id])
183
+ createdAt DateTime @default(now())
184
+
185
+ @@index([userId])
186
+ @@index([status])
187
+ }
188
+ ```
189
+
190
+ ```bash
191
+ # Push schema changes to the PlanetScale branch
192
+ npx prisma db push
193
+
194
+ # Generate the Prisma client
195
+ npx prisma generate
196
+ ```
197
+
198
+ ## Vitess Features and Query Insights
199
+
200
+ ```bash
201
+ # Open the query insights dashboard
202
+ pscale shell my-app main
203
+
204
+ # Inside the shell, check running queries
205
+ SHOW PROCESSLIST;
206
+
207
+ # Examine query statistics (PlanetScale Insights tab in the web UI)
208
+ # Or use the API:
209
+ pscale api organizations/my-org/databases/my-app/branches/main/query-statistics
210
+ ```
211
+
212
+ ### Useful Vitess-Aware Queries
213
+
214
+ ```sql
215
+ -- Check table sizes
216
+ SELECT table_name,
217
+ ROUND(data_length / 1024 / 1024, 2) AS data_mb,
218
+ ROUND(index_length / 1024 / 1024, 2) AS index_mb,
219
+ table_rows
220
+ FROM information_schema.tables
221
+ WHERE table_schema = 'my-app'
222
+ ORDER BY data_length DESC;
223
+
224
+ -- Show index usage
225
+ SHOW INDEX FROM users;
226
+
227
+ -- Explain a query plan
228
+ EXPLAIN SELECT * FROM orders WHERE user_id = 42 AND status = 'paid';
229
+ ```
230
+
231
+ ## Docker Setup for Local Development
232
+
233
+ Use a plain MySQL 8 container to mirror PlanetScale locally when you are offline or want fast iteration without the CLI proxy.
234
+
235
+ ```yaml
236
+ # docker-compose.yml
237
+ version: "3.9"
238
+
239
+ services:
240
+ mysql:
241
+ image: mysql:8.0
242
+ restart: unless-stopped
243
+ ports:
244
+ - "3306:3306"
245
+ environment:
246
+ MYSQL_ROOT_PASSWORD: rootpass
247
+ MYSQL_DATABASE: my-app
248
+ MYSQL_USER: myapp
249
+ MYSQL_PASSWORD: secret
250
+ volumes:
251
+ - mysql_data:/var/lib/mysql
252
+ - ./init.sql:/docker-entrypoint-initdb.d/init.sql
253
+ command: >
254
+ --default-authentication-plugin=mysql_native_password
255
+ --character-set-server=utf8mb4
256
+ --collation-server=utf8mb4_unicode_ci
257
+
258
+ volumes:
259
+ mysql_data:
260
+ ```
261
+
262
+ ```bash
263
+ docker compose up -d
264
+ mysql -h 127.0.0.1 -u myapp -psecret my-app
265
+ ```
266
+
267
+ ## Production Best Practices
268
+
269
+ - Keep every schema change backward compatible; deploy the schema first, then the application code.
270
+ - Use deploy request reviews as a gate; require at least one approval before merging.
271
+ - Enable connection pooling (`@planetscale/database` driver or Prisma Data Proxy) for serverless workloads.
272
+ - Monitor query insights weekly and add indexes for queries exceeding 100 ms.
273
+ - Set branch promotion rules so only specific team members can deploy to `main`.
274
+ - Use read-only regions to reduce latency for geographically distributed reads.
275
+
276
+ ## Troubleshooting
277
+
278
+ | Symptom | Likely Cause | Fix |
279
+ |---|---|---|
280
+ | `Access denied` on `pscale connect` | CLI not authenticated | Run `pscale auth login` |
281
+ | Deploy request shows "schema conflict" | Concurrent branch changes to the same table | Rebase: delete branch, recreate from current `main`, reapply changes |
282
+ | `foreign key constraint` error | PlanetScale does not support foreign keys | Use `relationMode = "prisma"` or remove FK definitions |
283
+ | High latency on reads | No index on queried column | Add index via a new branch and deploy request |
284
+ | `max connections` exceeded | Connection pooling not enabled | Use `@planetscale/database` serverless driver or PgBouncer-style proxy |
285
+ | `pscale connect` hangs | Firewall blocking outbound TLS | Allow outbound 443 to `*.psdb.cloud` |
286
+
287
+ ## Related Skills
288
+
289
+ - mysql (`mysql`) - MySQL tuning fundamentals
290
+ - database-backups (`database-backups`) - Recovery planning
291
+ - postgresql (`postgresql-devsec`) - Alternative relational database
292
+
293
+ ## Limitations
294
+
295
+ - Infrastructure commands can disrupt services: confirm target host/scope and have backups/snapshots before mutating state.
296
+ - Docs-only import: upstream scripts and templates not bundled.
297
+