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,415 @@
1
+ ---
2
+ name: saas-security-posture
3
+ description: Audit and harden your SaaS tool stack
4
+ category: devops
5
+ risk: critical
6
+ source: https://github.com/BagelHole/DevOps-Security-Agent-Skills
7
+ source_repo: BagelHole/DevOps-Security-Agent-Skills
8
+ source_type: community
9
+ date_added: '2026-09-20'
10
+ license: MIT
11
+ license_source: https://github.com/BagelHole/DevOps-Security-Agent-Skills/blob/main/LICENSE
12
+ compatibility: Requires the relevant OS/platform tooling and privileged access where
13
+ noted. Docs-only; helper scripts and templates not bundled.
14
+ metadata:
15
+ author: devops-skills
16
+ version: '1.0'
17
+ ---
18
+
19
+ # SaaS Security Posture Management for Startups
20
+
21
+ Secure every SaaS tool your company relies on with practical, command-driven hardening.
22
+
23
+ ## When to Use This Skill
24
+
25
+ - **SOC 2 preparation** — auditors need evidence of MFA, access controls, and OAuth governance.
26
+ - **Suspicious OAuth app** — an employee authorized a third-party app with broad scopes.
27
+ - **SaaS sprawl** — teams sign up for tools with company email and nobody tracks them.
28
+ - **Post-incident hardening** — after phishing or credential leaks, tighten every surface.
29
+
30
+ ## 2. SaaS Inventory Audit
31
+
32
+ ### Google Workspace — OAuth Grants
33
+
34
+ ```bash
35
+ gam all users show tokens > oauth_tokens_audit.csv
36
+ ```
37
+
38
+ ### GitHub — Installed Apps
39
+
40
+ ```bash
41
+ gh api /orgs/{ORG}/installations --paginate \
42
+ --jq '.installations[] | {app: .app_slug, permissions: .permissions, created: .created_at}'
43
+ gh api /orgs/{ORG}/credential-authorizations --paginate \
44
+ --jq '.[] | {login: .login, credential_type: .credential_type}'
45
+ ```
46
+
47
+ ### Slack — Approved and Pending Apps
48
+
49
+ ```bash
50
+ curl -s -H "Authorization: Bearer ${SLACK_ADMIN_TOKEN}" \
51
+ "https://slack.com/api/admin.apps.approved.list" | jq '.approved_apps[] | {name: .app.name, id: .app.id}'
52
+ curl -s -H "Authorization: Bearer ${SLACK_ADMIN_TOKEN}" \
53
+ "https://slack.com/api/admin.apps.requests.list" | jq '.app_requests[]'
54
+ ```
55
+
56
+ ### AWS — IAM Credential Report
57
+
58
+ ```bash
59
+ aws iam generate-credential-report
60
+ aws iam get-credential-report --output text --query 'Content' | base64 -d > iam_credential_report.csv
61
+ ```
62
+
63
+ ### Master Inventory Template
64
+
65
+ ```yaml
66
+ tools:
67
+ - name: Google Workspace
68
+ owner: it@company.com
69
+ sso: true
70
+ mfa: enforced
71
+ - name: GitHub Enterprise
72
+ owner: engineering@company.com
73
+ sso: true
74
+ mfa: enforced
75
+ - name: Slack Business+
76
+ owner: it@company.com
77
+ sso: true
78
+ app_approval: required
79
+ - name: AWS Organizations
80
+ owner: platform@company.com
81
+ sso: true
82
+ scp_enforced: true
83
+ ```
84
+
85
+ ---
86
+
87
+ ## 3. GitHub Security Hardening
88
+
89
+ ```bash
90
+ # Enforce 2FA and find non-compliant members
91
+ gh api -X PATCH /orgs/{ORG} -f two_factor_requirement_enabled=true
92
+ gh api /orgs/{ORG}/members?filter=2fa_disabled --paginate --jq '.[].login'
93
+
94
+ # Verify SAML SSO identities
95
+ gh api /orgs/{ORG}/credential-authorizations --paginate \
96
+ --jq '.[] | {login: .login, saml_name_id: .saml_name_id}'
97
+
98
+ # Add IP allow list entry
99
+ gh api -X POST /orgs/{ORG}/ip-allow-list \
100
+ -f allow_list_value="203.0.113.0/24" -f name="Office VPN" -F is_active=true
101
+
102
+ # Branch protection on main
103
+ gh api -X PUT /repos/{ORG}/{REPO}/branches/main/protection \
104
+ -H "Accept: application/vnd.github+json" --input - <<'EOF'
105
+ {
106
+ "required_status_checks": {"strict": true, "contexts": ["ci/build","ci/test"]},
107
+ "enforce_admins": true,
108
+ "required_pull_request_reviews": {
109
+ "required_approving_review_count": 2,
110
+ "dismiss_stale_reviews": true,
111
+ "require_code_owner_reviews": true
112
+ },
113
+ "restrictions": null,
114
+ "allow_force_pushes": false,
115
+ "allow_deletions": false
116
+ }
117
+ EOF
118
+
119
+ # Audit PATs and revoke stale tokens
120
+ gh api /orgs/{ORG}/personal-access-tokens --paginate \
121
+ --jq '.[] | {owner: .owner.login, name: .token_name, expires: .token_expires_at}'
122
+ gh api -X DELETE /orgs/{ORG}/personal-access-tokens/{PAT_ID}
123
+
124
+ # Audit deploy keys and webhooks
125
+ for repo in $(gh repo list {ORG} --limit 500 --json name -q '.[].name'); do
126
+ gh api /repos/{ORG}/${repo}/keys --jq '.[] | {title: .title, read_only: .read_only}'
127
+ done
128
+ gh api /orgs/{ORG}/hooks --jq '.[] | {url: .config.url, events: .events, active: .active}'
129
+ ```
130
+
131
+ ---
132
+
133
+ ## 4. Slack Security
134
+
135
+ ```bash
136
+ # Require app approval
137
+ curl -s -X POST -H "Authorization: Bearer ${SLACK_ADMIN_TOKEN}" \
138
+ -H "Content-Type: application/json" \
139
+ "https://slack.com/api/admin.apps.config.set" -d '{"app_approval_enabled": true}'
140
+
141
+ # Set workspace to invite-only
142
+ curl -s -X POST -H "Authorization: Bearer ${SLACK_ADMIN_TOKEN}" \
143
+ -H "Content-Type: application/json" \
144
+ "https://slack.com/api/admin.teams.settings.setDiscoverability" \
145
+ -d '{"team_id": "T0XXXXXXX", "discoverability": "invite_only"}'
146
+
147
+ # Force re-authentication every 24 hours
148
+ curl -s -X POST -H "Authorization: Bearer ${SLACK_ADMIN_TOKEN}" \
149
+ -H "Content-Type: application/json" \
150
+ "https://slack.com/api/admin.teams.settings.setSessionDuration" \
151
+ -d '{"team_id": "T0XXXXXXX", "session_duration": 86400}'
152
+
153
+ # Set message retention to 1 year
154
+ curl -s -X POST -H "Authorization: Bearer ${SLACK_ADMIN_TOKEN}" \
155
+ -H "Content-Type: application/json" \
156
+ "https://slack.com/api/admin.teams.settings.setRetentionPolicy" \
157
+ -d '{"team_id": "T0XXXXXXX", "retention_type": "all", "retention_duration": 365}'
158
+
159
+ # Audit Slack Connect shared channels
160
+ curl -s -H "Authorization: Bearer ${SLACK_ADMIN_TOKEN}" \
161
+ "https://slack.com/api/admin.conversations.search?search_channel_types=connect" \
162
+ | jq '.conversations[] | {name: .name, is_ext_shared: .is_ext_shared}'
163
+ ```
164
+
165
+ ---
166
+
167
+ ## 5. Google Workspace Hardening
168
+
169
+ ```bash
170
+ # Enforce 2-Step Verification and strong passwords
171
+ gam update org "/" settings 2sv enforced
172
+ gam update org "/" settings password_length 14
173
+
174
+ # Block all third-party OAuth apps, then whitelist specific ones
175
+ gam update org "/" settings oauth_access block_all
176
+ gam update org "/" settings oauth_access whitelist client_id:APP_CLIENT_ID_1
177
+
178
+ # Disable external Drive sharing and file transfers
179
+ gam update org "/" settings drive sharing_outside_domain off
180
+ gam update org "/" settings drive transfer_to_personal off
181
+ gam update org "/" settings groups external_members off
182
+
183
+ # Verify email authentication records
184
+ dig TXT company.com | grep "v=spf1"
185
+ dig TXT google._domainkey.company.com
186
+ dig TXT _dmarc.company.com
187
+ # Expected: v=DMARC1; p=reject; rua=mailto:dmarc-reports@company.com; pct=100
188
+
189
+ # Mobile device management
190
+ gam update org "/" settings mobile management advanced
191
+ gam update org "/" settings mobile screen_lock required
192
+ gam update org "/" settings mobile encryption required
193
+ gam update mobile ${DEVICE_ID} action wipe # compromised device
194
+ ```
195
+
196
+ ---
197
+
198
+ ## 6. AWS Account Security
199
+
200
+ ```bash
201
+ # Root account lockdown — verify MFA, remove access keys
202
+ aws iam get-account-summary --query 'SummaryMap.AccountMFAEnabled'
203
+ aws iam get-account-summary --query 'SummaryMap.AccountAccessKeysPresent'
204
+
205
+ # SSO permission set with least privilege
206
+ aws sso-admin create-permission-set --instance-arn "${SSO_INSTANCE_ARN}" \
207
+ --name "DeveloperAccess" --session-duration "PT8H"
208
+ aws sso-admin attach-managed-policy-to-permission-set \
209
+ --instance-arn "${SSO_INSTANCE_ARN}" --permission-set-arn "${PERMISSION_SET_ARN}" \
210
+ --managed-policy-arn "arn:aws:iam::aws:policy/ReadOnlyAccess"
211
+ ```
212
+
213
+ ### Service Control Policies
214
+
215
+ ```json
216
+ {
217
+ "Version": "2012-10-17",
218
+ "Statement": [
219
+ {"Sid": "DenyRootActions", "Effect": "Deny", "Action": "*", "Resource": "*",
220
+ "Condition": {"StringLike": {"aws:PrincipalArn": "arn:aws:iam::*:root"}}},
221
+ {"Sid": "DenyLeaveOrg", "Effect": "Deny",
222
+ "Action": "organizations:LeaveOrganization", "Resource": "*"}
223
+ ]
224
+ }
225
+ ```
226
+
227
+ ```bash
228
+ aws organizations create-policy --name "DenyRootActions" \
229
+ --type SERVICE_CONTROL_POLICY --content file://deny-root-actions.json
230
+ aws organizations attach-policy --policy-id "${POLICY_ID}" --target-id "${ORG_ROOT_ID}"
231
+
232
+ # Organization-wide CloudTrail
233
+ aws cloudtrail create-trail --name org-security-trail \
234
+ --s3-bucket-name company-cloudtrail-logs \
235
+ --is-multi-region-trail --is-organization-trail --enable-log-file-validation
236
+ aws cloudtrail start-logging --name org-security-trail
237
+ ```
238
+
239
+ ---
240
+
241
+ ## 7. OAuth App Review
242
+
243
+ ### Identify High-Risk Grants
244
+
245
+ ```bash
246
+ # Google — find apps with dangerous scopes
247
+ gam all users show tokens | grep -E "(drive|gmail|admin)" > high_risk_oauth.txt
248
+
249
+ # GitHub — find apps with write access
250
+ gh api /orgs/{ORG}/installations --paginate \
251
+ --jq '.installations[] | select(.permissions.contents == "write") | {app: .app_slug}'
252
+ ```
253
+
254
+ ### Revoke Dangerous Grants
255
+
256
+ ```bash
257
+ gam user compromised@company.com delete token clientid APP_CLIENT_ID # single app
258
+ gam user compromised@company.com delete tokens # all apps
259
+ gh api -X DELETE /orgs/{ORG}/installations/{INSTALLATION_ID} # GitHub app
260
+ curl -s -X POST -H "Authorization: Bearer ${SLACK_ADMIN_TOKEN}" \
261
+ -H "Content-Type: application/json" \
262
+ "https://slack.com/api/admin.apps.uninstall" -d '{"app_id": "A0XXXXXXX"}'
263
+ ```
264
+
265
+ ### Scope Risk Classification
266
+
267
+ ```
268
+ CRITICAL — revoke unless justified:
269
+ Google: mail.google.com, admin.directory.user | GitHub: admin:org, repo | Slack: admin
270
+ HIGH — review carefully:
271
+ Google: googleapis.com/auth/drive | GitHub: contents:write | Slack: channels:read
272
+ LOW — generally safe:
273
+ Google: userinfo.email | GitHub: read:org | Slack: identity.basic
274
+ ```
275
+
276
+ ---
277
+
278
+ ## 8. Admin Account Protection
279
+
280
+ ```bash
281
+ # Dedicated admin account in Google Workspace
282
+ gam create user admin-jdoe@company.com firstname "John (Admin)" lastname "Doe" \
283
+ password "$(openssl rand -base64 32)" org "/Admins"
284
+ gam update user admin-jdoe@company.com admin on
285
+
286
+ # Require hardware security keys for the Admins OU
287
+ gam update org "/Admins" settings 2sv security_key_only
288
+
289
+ # AWS MFA enforcement policy
290
+ cat <<'EOF' > enforce-mfa-policy.json
291
+ {
292
+ "Version": "2012-10-17",
293
+ "Statement": [{
294
+ "Sid": "DenyUnlessMFA", "Effect": "Deny",
295
+ "NotAction": ["iam:CreateVirtualMFADevice","iam:EnableMFADevice",
296
+ "iam:GetUser","iam:ListMFADevices","sts:GetSessionToken"],
297
+ "Resource": "*",
298
+ "Condition": {"BoolIfExists": {"aws:MultiFactorAuthPresent": "false"}}
299
+ }]
300
+ }
301
+ EOF
302
+ aws iam create-policy --policy-name EnforceMFA --policy-document file://enforce-mfa-policy.json
303
+
304
+ # Break-glass account for SSO outages
305
+ BREAK_GLASS_PW=$(openssl rand -base64 48)
306
+ gam create user breakglass@company.com firstname "Break" lastname "Glass" \
307
+ password "${BREAK_GLASS_PW}" org "/Admins" admin on
308
+ # Store password in a sealed envelope in a physical safe
309
+ # After every use: rotate password, re-seal, log the incident
310
+ ```
311
+
312
+ ---
313
+
314
+ ## 9. Data Loss Prevention
315
+
316
+ ```bash
317
+ # Google Drive — block external sharing and restrict viewers
318
+ gam update org "/" settings drive sharing_outside_domain off
319
+ gam update org "/" settings drive disable_download_print_copy_for_viewers on
320
+
321
+ # GitHub — enable secret scanning and push protection org-wide
322
+ gh api -X PATCH /orgs/{ORG} -f security_product=secret_scanning -f enablement=enable_all
323
+ gh api -X PATCH /orgs/{ORG} -f security_product=secret_scanning_push_protection -f enablement=enable_all
324
+ gh api /orgs/{ORG}/secret-scanning/alerts --paginate \
325
+ --jq '.[] | {repo: .repository.name, secret_type: .secret_type, state: .state}'
326
+
327
+ # Slack — restrict data export to org admins
328
+ curl -s -X POST -H "Authorization: Bearer ${SLACK_ADMIN_TOKEN}" \
329
+ -H "Content-Type: application/json" \
330
+ "https://slack.com/api/admin.teams.settings.setExportRestrictions" \
331
+ -d '{"team_id": "T0XXXXXXX", "export_type": "org_admins_only"}'
332
+
333
+ # AWS — block all public S3 access at account level
334
+ aws s3control put-public-access-block --account-id "${AWS_ACCOUNT_ID}" \
335
+ --public-access-block-configuration \
336
+ "BlockPublicAcls=true,IgnorePublicAcls=true,BlockPublicPolicy=true,RestrictPublicBuckets=true"
337
+ ```
338
+
339
+ ---
340
+
341
+ ## 10. Shadow IT Detection
342
+
343
+ ### DNS-Based Discovery
344
+
345
+ ```bash
346
+ SHADOW_IT_DOMAINS=("airtable.com" "notion.so" "trello.com" "asana.com"
347
+ "monday.com" "clickup.com" "figma.com" "canva.com" "miro.com"
348
+ "zapier.com" "dropbox.com" "box.com" "wetransfer.com")
349
+ for domain in "${SHADOW_IT_DOMAINS[@]}"; do
350
+ count=$(grep -c "${domain}" /var/log/dns/query.log 2>/dev/null || echo "0")
351
+ [ "${count}" -gt 0 ] && echo "DETECTED: ${domain} — ${count} queries"
352
+ done
353
+ ```
354
+
355
+ ### Google Workspace Login Audit
356
+
357
+ ```bash
358
+ gam report login parameters app_name \
359
+ start_time "2026-03-01T00:00:00Z" end_time "2026-03-24T23:59:59Z" > login_audit.csv
360
+ gam report token > token_usage_report.csv
361
+ ```
362
+
363
+ ### Proxy Log Analysis
364
+
365
+ ```bash
366
+ awk '{print $7}' /var/log/squid/access.log | sed 's|https\?://||;s|/.*||' \
367
+ | sort | uniq -c | sort -rn | head -50 > top_domains.txt
368
+ comm -23 <(awk '{print $2}' top_domains.txt | sort) \
369
+ <(yq '.tools[].domains[]' saas-inventory.yaml | sort) > unapproved.txt
370
+ ```
371
+
372
+ ### Automated Alerting
373
+
374
+ ```bash
375
+ cat <<'SCRIPT' > /usr/local/bin/shadow-it-check.sh
376
+ #!/usr/bin/env bash
377
+ set -euo pipefail
378
+ APPROVED="/etc/security/approved-saas-domains.txt"
379
+ YESTERDAY=$(date -d "yesterday" +%d-%b-%Y)
380
+ grep "${YESTERDAY}" /var/log/dns/query.log | awk '{print $4}' | sort -u > /tmp/today.txt
381
+ NEW=$(comm -23 /tmp/today.txt <(sort "${APPROVED}"))
382
+ [ -n "${NEW}" ] && mail -s "[ALERT] Shadow IT" security@company.com <<< "${NEW}"
383
+ SCRIPT
384
+ chmod +x /usr/local/bin/shadow-it-check.sh
385
+ echo "0 8 * * * root /usr/local/bin/shadow-it-check.sh" >> /etc/cron.d/shadow-it-check
386
+ ```
387
+
388
+ ---
389
+
390
+ ## Quick Reference — Top 10 Priority Actions
391
+
392
+ | # | Action | Scope |
393
+ |---|--------|-------|
394
+ | 1 | Enforce MFA/2FA everywhere | Google, GitHub, AWS, Slack |
395
+ | 2 | Enable SSO with your IdP | All tools |
396
+ | 3 | Audit and revoke OAuth grants | Google, GitHub |
397
+ | 4 | Require Slack app approval | Slack |
398
+ | 5 | Branch protection on main | GitHub |
399
+ | 6 | Secret scanning + push protection | GitHub |
400
+ | 7 | Block public S3 buckets | AWS |
401
+ | 8 | Enable org-wide CloudTrail | AWS |
402
+ | 9 | Disable external Drive sharing | Google |
403
+ | 10 | Create break-glass admin accounts | Google, AWS |
404
+
405
+ ## Maintenance Cadence
406
+
407
+ **Weekly:** Review OAuth grants, secret scanning alerts, Slack app queue.
408
+ **Monthly:** AWS IAM report, rotate service keys, admin account review, shadow IT scan.
409
+ **Quarterly:** Full SaaS inventory refresh, OAuth pruning, break-glass test, SCP updates.
410
+
411
+ ## Limitations
412
+
413
+ - Infrastructure commands can disrupt services: confirm target host/scope and have backups/snapshots before mutating state.
414
+ - Docs-only import: upstream scripts and templates not bundled.
415
+