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.
- package/bundled-skills/.antigravity-install-manifest.json +304 -1
- package/bundled-skills/access-review/SKILL.md +394 -0
- package/bundled-skills/access-review/references/details.md +121 -0
- package/bundled-skills/agent-evals/SKILL.md +420 -0
- package/bundled-skills/agent-observability/SKILL.md +346 -0
- package/bundled-skills/agent-observability/references/details.md +786 -0
- package/bundled-skills/ai-agent-security/SKILL.md +393 -0
- package/bundled-skills/ai-agent-security/references/details.md +912 -0
- package/bundled-skills/ai-coding-agent-guardrails/SKILL.md +442 -0
- package/bundled-skills/ai-coding-agent-guardrails/references/details.md +753 -0
- package/bundled-skills/ai-inference-service-mesh/SKILL.md +449 -0
- package/bundled-skills/ai-pipeline-orchestration/SKILL.md +287 -0
- package/bundled-skills/ai-red-teaming/SKILL.md +409 -0
- package/bundled-skills/ai-security-hardening/SKILL.md +343 -0
- package/bundled-skills/ai-sre-incident-response/SKILL.md +336 -0
- package/bundled-skills/alerting-oncall/SKILL.md +458 -0
- package/bundled-skills/alerting-oncall/references/details.md +84 -0
- package/bundled-skills/api-integration-architect/SKILL.md +241 -0
- package/bundled-skills/apify-generate-output-schema/SKILL.md +438 -0
- package/bundled-skills/apify-integration-development/SKILL.md +168 -0
- package/bundled-skills/apify-integration-development/references/ai-framework-package.md +158 -0
- package/bundled-skills/apify-integration-development/references/ai-harness-plugin.md +192 -0
- package/bundled-skills/apify-integration-development/references/sdk-integration.md +236 -0
- package/bundled-skills/apify-integration-development/references/workflow-automation.md +163 -0
- package/bundled-skills/apk-redteam-pipeline/SKILL.md +446 -0
- package/bundled-skills/architecture-review/README.md +42 -0
- package/bundled-skills/architecture-review/SKILL.md +77 -0
- package/bundled-skills/architecture-review/examples.md +11 -0
- package/bundled-skills/architecture-review/reference/best-practices.md +7 -0
- package/bundled-skills/architecture-review/reference/capabilities.md +20 -0
- package/bundled-skills/architecture-review/reference/fallbacks.md +11 -0
- package/bundled-skills/architecture-review/reference/graph.md +15 -0
- package/bundled-skills/architecture-review/reference/mcp.md +14 -0
- package/bundled-skills/architecture-review/reference/workflow.md +15 -0
- package/bundled-skills/architecture-review/templates/architecture-review.md +21 -0
- package/bundled-skills/argocd-gitops/SKILL.md +469 -0
- package/bundled-skills/arm-templates/SKILL.md +438 -0
- package/bundled-skills/arm-templates/references/details.md +64 -0
- package/bundled-skills/asset-inventory/SKILL.md +412 -0
- package/bundled-skills/asset-inventory/references/details.md +127 -0
- package/bundled-skills/audit-logging/SKILL.md +476 -0
- package/bundled-skills/aws-cloudtrail/SKILL.md +486 -0
- package/bundled-skills/aws-cost-optimization/SKILL.md +331 -0
- package/bundled-skills/aws-ec2/SKILL.md +426 -0
- package/bundled-skills/aws-ecs-fargate/SKILL.md +388 -0
- package/bundled-skills/aws-iam/SKILL.md +463 -0
- package/bundled-skills/aws-lambda/SKILL.md +428 -0
- package/bundled-skills/aws-rds/SKILL.md +380 -0
- package/bundled-skills/aws-s3/SKILL.md +434 -0
- package/bundled-skills/aws-secrets-manager/SKILL.md +486 -0
- package/bundled-skills/aws-vpc/SKILL.md +436 -0
- package/bundled-skills/azure-ai-document-intelligence-ts/SKILL.md +1 -1
- package/bundled-skills/azure-aks/SKILL.md +423 -0
- package/bundled-skills/azure-devops/SKILL.md +457 -0
- package/bundled-skills/azure-functions-devsec/SKILL.md +436 -0
- package/bundled-skills/azure-keyvault/SKILL.md +455 -0
- package/bundled-skills/azure-keyvault/references/details.md +83 -0
- package/bundled-skills/azure-monitor-audit/SKILL.md +379 -0
- package/bundled-skills/azure-networking/SKILL.md +448 -0
- package/bundled-skills/azure-networking/references/details.md +135 -0
- package/bundled-skills/azure-sql/SKILL.md +413 -0
- package/bundled-skills/azure-sql/references/details.md +113 -0
- package/bundled-skills/azure-vms/SKILL.md +402 -0
- package/bundled-skills/azure-vms/references/details.md +134 -0
- package/bundled-skills/backup-recovery/SKILL.md +388 -0
- package/bundled-skills/bb-methodology/SKILL.md +451 -0
- package/bundled-skills/bb-methodology/references/details.md +120 -0
- package/bundled-skills/block-storage/SKILL.md +371 -0
- package/bundled-skills/blue-green-deploy/SKILL.md +453 -0
- package/bundled-skills/blue-green-deploy/references/details.md +90 -0
- package/bundled-skills/bug-bounty/SKILL.md +447 -0
- package/bundled-skills/bug-bounty/references/details.md +1316 -0
- package/bundled-skills/bugcrowd-reporting/SKILL.md +351 -0
- package/bundled-skills/business-continuity/SKILL.md +463 -0
- package/bundled-skills/career-ops/SKILL.md +186 -0
- package/bundled-skills/cdn-setup/SKILL.md +374 -0
- package/bundled-skills/change-management/SKILL.md +438 -0
- package/bundled-skills/change-management/references/details.md +105 -0
- package/bundled-skills/circleci/SKILL.md +475 -0
- package/bundled-skills/cis-benchmarks/SKILL.md +150 -0
- package/bundled-skills/cloudflare-pages/SKILL.md +318 -0
- package/bundled-skills/cloudflare-r2/SKILL.md +353 -0
- package/bundled-skills/cloudflare-workers/SKILL.md +415 -0
- package/bundled-skills/cloudflare-zero-trust/SKILL.md +361 -0
- package/bundled-skills/cloudformation/SKILL.md +461 -0
- package/bundled-skills/code-review-sensei/SKILL.md +177 -0
- package/bundled-skills/codebase-onboarding/README.md +42 -0
- package/bundled-skills/codebase-onboarding/SKILL.md +77 -0
- package/bundled-skills/codebase-onboarding/examples.md +11 -0
- package/bundled-skills/codebase-onboarding/reference/best-practices.md +7 -0
- package/bundled-skills/codebase-onboarding/reference/capabilities.md +20 -0
- package/bundled-skills/codebase-onboarding/reference/fallbacks.md +11 -0
- package/bundled-skills/codebase-onboarding/reference/graph.md +15 -0
- package/bundled-skills/codebase-onboarding/reference/mcp.md +14 -0
- package/bundled-skills/codebase-onboarding/reference/workflow.md +15 -0
- package/bundled-skills/codebase-onboarding/templates/repository-onboarding.md +21 -0
- package/bundled-skills/connection-auth-rules/SKILL.md +199 -0
- package/bundled-skills/connection-auth-rules/fetch_schema.py +320 -0
- package/bundled-skills/constraint-driven-development/SKILL.md +335 -0
- package/bundled-skills/constraint-driven-development/references/floor-guard.md +99 -0
- package/bundled-skills/container-hardening/SKILL.md +126 -0
- package/bundled-skills/container-registries/SKILL.md +435 -0
- package/bundled-skills/container-scanning/SKILL.md +416 -0
- package/bundled-skills/convex-backend/SKILL.md +338 -0
- package/bundled-skills/dast-scanning/SKILL.md +437 -0
- package/bundled-skills/database-backups/SKILL.md +425 -0
- package/bundled-skills/datadog/SKILL.md +487 -0
- package/bundled-skills/dependency-analysis/README.md +42 -0
- package/bundled-skills/dependency-analysis/SKILL.md +76 -0
- package/bundled-skills/dependency-analysis/examples.md +11 -0
- package/bundled-skills/dependency-analysis/reference/best-practices.md +7 -0
- package/bundled-skills/dependency-analysis/reference/capabilities.md +20 -0
- package/bundled-skills/dependency-analysis/reference/fallbacks.md +11 -0
- package/bundled-skills/dependency-analysis/reference/graph.md +15 -0
- package/bundled-skills/dependency-analysis/reference/mcp.md +14 -0
- package/bundled-skills/dependency-analysis/reference/workflow.md +15 -0
- package/bundled-skills/dependency-analysis/templates/dependency-review.md +21 -0
- package/bundled-skills/dependency-scanning/SKILL.md +457 -0
- package/bundled-skills/devcontainers-nix/SKILL.md +416 -0
- package/bundled-skills/devops-pipeline-builder/SKILL.md +200 -0
- package/bundled-skills/disaster-recovery/SKILL.md +374 -0
- package/bundled-skills/disaster-recovery/references/details.md +219 -0
- package/bundled-skills/dns-management/SKILL.md +375 -0
- package/bundled-skills/docker-compose/SKILL.md +482 -0
- package/bundled-skills/docker-management/SKILL.md +426 -0
- package/bundled-skills/eas-app-stores/SKILL.md +197 -0
- package/bundled-skills/eas-app-stores/agents/openai.yaml +4 -0
- package/bundled-skills/eas-app-stores/references/app-store-metadata.md +497 -0
- package/bundled-skills/eas-app-stores/references/ios-app-store.md +376 -0
- package/bundled-skills/eas-app-stores/references/native-ios.md +167 -0
- package/bundled-skills/eas-app-stores/references/play-store.md +244 -0
- package/bundled-skills/eas-app-stores/references/testflight.md +62 -0
- package/bundled-skills/eas-app-stores/references/workflows.md +120 -0
- package/bundled-skills/eas-hosting/SKILL.md +448 -0
- package/bundled-skills/eas-hosting/agents/openai.yaml +4 -0
- package/bundled-skills/eas-observe/SKILL.md +75 -0
- package/bundled-skills/eas-observe/agents/openai.yaml +4 -0
- package/bundled-skills/eas-observe/references/metrics.md +98 -0
- package/bundled-skills/eas-observe/references/queries.md +403 -0
- package/bundled-skills/eas-observe/references/setup.md +476 -0
- package/bundled-skills/eas-observe/references/third-party.md +136 -0
- package/bundled-skills/eas-simulator/SKILL.md +251 -0
- package/bundled-skills/eas-simulator/agents/openai.yaml +4 -0
- package/bundled-skills/eas-simulator/references/controllers.md +135 -0
- package/bundled-skills/eas-simulator/references/run-your-app.md +240 -0
- package/bundled-skills/eas-simulator/references/troubleshooting.md +47 -0
- package/bundled-skills/eas-workflows/SKILL.md +119 -0
- package/bundled-skills/eas-workflows/agents/openai.yaml +4 -0
- package/bundled-skills/eas-workflows/scripts/fetch.js +109 -0
- package/bundled-skills/ebpf-observability/SKILL.md +436 -0
- package/bundled-skills/ebpf-observability/references/details.md +542 -0
- package/bundled-skills/elk-stack/SKILL.md +487 -0
- package/bundled-skills/enterprise-vpn-attack/SKILL.md +395 -0
- package/bundled-skills/evidence-hygiene/SKILL.md +404 -0
- package/bundled-skills/expo-animation/LICENSE +21 -0
- package/bundled-skills/expo-animation/RECIPES.md +385 -0
- package/bundled-skills/expo-animation/SKILL.md +295 -0
- package/bundled-skills/expo-animation/agents/openai.yaml +4 -0
- package/bundled-skills/fact-check-x-unified/SKILL.md +178 -0
- package/bundled-skills/fact-check-x-unified/agents/openai.yaml +4 -0
- package/bundled-skills/fact-check-x-unified/references/acceptance-criteria.md +44 -0
- package/bundled-skills/fact-check-x-unified/references/contracts.md +39 -0
- package/bundled-skills/fact-check-x-unified/scripts/common.py +31 -0
- package/bundled-skills/fact-check-x-unified/scripts/fact_check_x.py +1832 -0
- package/bundled-skills/fact-check-x-unified/scripts/trusted_search_config.py +324 -0
- package/bundled-skills/fact-check-x-unified/tests/anchor_downgrade_test.py +90 -0
- package/bundled-skills/fact-check-x-unified/tests/multi_platform_test.py +369 -0
- package/bundled-skills/fact-check-x-unified/tests/smoke_test.py +740 -0
- package/bundled-skills/fact-check-x-unified/tests/stage_checkpoint_test.py +103 -0
- package/bundled-skills/fact-check-x-unified/tests/trusted_search_config_test.py +156 -0
- package/bundled-skills/feature-flags/SKILL.md +426 -0
- package/bundled-skills/feature-flags/references/details.md +86 -0
- package/bundled-skills/fedramp-compliance/SKILL.md +453 -0
- package/bundled-skills/firebase-app-platform/SKILL.md +381 -0
- package/bundled-skills/firewall-config/SKILL.md +479 -0
- package/bundled-skills/gcp-audit-logs/SKILL.md +452 -0
- package/bundled-skills/gcp-audit-logs/references/details.md +56 -0
- package/bundled-skills/gcp-cloud-functions/SKILL.md +284 -0
- package/bundled-skills/gcp-cloud-sql/SKILL.md +277 -0
- package/bundled-skills/gcp-compute/SKILL.md +319 -0
- package/bundled-skills/gcp-gke/SKILL.md +307 -0
- package/bundled-skills/gcp-networking/SKILL.md +293 -0
- package/bundled-skills/gcp-secret-manager/SKILL.md +421 -0
- package/bundled-skills/gcp-secret-manager/references/details.md +131 -0
- package/bundled-skills/gdpr-compliance/SKILL.md +451 -0
- package/bundled-skills/gdpr-compliance/references/details.md +145 -0
- package/bundled-skills/geo-audit/SKILL.md +368 -0
- package/bundled-skills/geo-brand-mentions/SKILL.md +68 -0
- package/bundled-skills/geo-brand-mentions/references/details.md +471 -0
- package/bundled-skills/geo-citability/SKILL.md +350 -0
- package/bundled-skills/geo-compare/SKILL.md +340 -0
- package/bundled-skills/geo-content/SKILL.md +383 -0
- package/bundled-skills/geo-crawlers/SKILL.md +408 -0
- package/bundled-skills/geo-llmstxt/SKILL.md +464 -0
- package/bundled-skills/geo-platform-optimizer/SKILL.md +314 -0
- package/bundled-skills/geo-proposal/SKILL.md +378 -0
- package/bundled-skills/geo-prospect/SKILL.md +225 -0
- package/bundled-skills/geo-report/SKILL.md +436 -0
- package/bundled-skills/geo-report-pdf/SKILL.md +157 -0
- package/bundled-skills/geo-schema/SKILL.md +408 -0
- package/bundled-skills/geo-technical/SKILL.md +78 -0
- package/bundled-skills/geo-technical/references/details.md +543 -0
- package/bundled-skills/git-workflow/SKILL.md +460 -0
- package/bundled-skills/github-actions/SKILL.md +368 -0
- package/bundled-skills/gitlab-ci/SKILL.md +340 -0
- package/bundled-skills/gpt-taste/SKILL.md +8 -1
- package/bundled-skills/gpu-kubernetes-operations/SKILL.md +468 -0
- package/bundled-skills/gpu-server-management/SKILL.md +236 -0
- package/bundled-skills/hashicorp-vault/SKILL.md +408 -0
- package/bundled-skills/helm-charts/SKILL.md +469 -0
- package/bundled-skills/hf-cli/SKILL.md +263 -0
- package/bundled-skills/hipaa-compliance/SKILL.md +451 -0
- package/bundled-skills/huggingface-community-evals/SKILL.md +228 -0
- package/bundled-skills/huggingface-community-evals/examples/.env.example +3 -0
- package/bundled-skills/huggingface-community-evals/examples/USAGE_EXAMPLES.md +101 -0
- package/bundled-skills/huggingface-community-evals/scripts/inspect_eval_uv.py +104 -0
- package/bundled-skills/huggingface-community-evals/scripts/inspect_vllm_uv.py +306 -0
- package/bundled-skills/huggingface-community-evals/scripts/lighteval_vllm_uv.py +297 -0
- package/bundled-skills/huggingface-datasets/SKILL.md +130 -0
- package/bundled-skills/hunt-aspnet/SKILL.md +321 -0
- package/bundled-skills/hunt-ato/SKILL.md +184 -0
- package/bundled-skills/hunt-auth-bypass/SKILL.md +426 -0
- package/bundled-skills/hunt-auth-bypass/references/details.md +80 -0
- package/bundled-skills/hunt-brute-force/SKILL.md +341 -0
- package/bundled-skills/hunt-business-logic/SKILL.md +281 -0
- package/bundled-skills/hunt-cache-poison/SKILL.md +382 -0
- package/bundled-skills/hunt-captcha-bypass/SKILL.md +136 -0
- package/bundled-skills/hunt-cicd/SKILL.md +311 -0
- package/bundled-skills/hunt-clickjacking/SKILL.md +110 -0
- package/bundled-skills/hunt-cors/SKILL.md +335 -0
- package/bundled-skills/hunt-dom/SKILL.md +323 -0
- package/bundled-skills/hunt-exceptional-conditions/SKILL.md +111 -0
- package/bundled-skills/hunt-file-upload/SKILL.md +202 -0
- package/bundled-skills/hunt-fintech-graphql/SKILL.md +289 -0
- package/bundled-skills/hunt-forgot-password/SKILL.md +114 -0
- package/bundled-skills/hunt-grpc/SKILL.md +317 -0
- package/bundled-skills/hunt-host-header/SKILL.md +309 -0
- package/bundled-skills/hunt-html-injection/SKILL.md +106 -0
- package/bundled-skills/hunt-http-smuggling/SKILL.md +129 -0
- package/bundled-skills/hunt-http-smuggling/references/phase2h-smuggling-cachepoison.md +177 -0
- package/bundled-skills/hunt-idor/SKILL.md +434 -0
- package/bundled-skills/hunt-jwt-crypto/SKILL.md +221 -0
- package/bundled-skills/hunt-k8s/SKILL.md +337 -0
- package/bundled-skills/hunt-laravel/SKILL.md +255 -0
- package/bundled-skills/hunt-ldap/SKILL.md +351 -0
- package/bundled-skills/hunt-lfi/SKILL.md +311 -0
- package/bundled-skills/hunt-llm-ai/SKILL.md +289 -0
- package/bundled-skills/hunt-mfa-bypass/SKILL.md +177 -0
- package/bundled-skills/hunt-misc/SKILL.md +378 -0
- package/bundled-skills/hunt-nextjs/SKILL.md +299 -0
- package/bundled-skills/hunt-nodejs/SKILL.md +263 -0
- package/bundled-skills/hunt-nosqli/SKILL.md +210 -0
- package/bundled-skills/hunt-ntlm-info/SKILL.md +314 -0
- package/bundled-skills/hunt-oauth/SKILL.md +459 -0
- package/bundled-skills/hunt-open-redirect/SKILL.md +223 -0
- package/bundled-skills/hunt-race-condition/SKILL.md +381 -0
- package/bundled-skills/hunt-race-condition/references/details.md +159 -0
- package/bundled-skills/hunt-rag-vector/SKILL.md +212 -0
- package/bundled-skills/hunt-rce/SKILL.md +444 -0
- package/bundled-skills/hunt-rce/references/details.md +110 -0
- package/bundled-skills/hunt-saml/SKILL.md +156 -0
- package/bundled-skills/hunt-session/SKILL.md +342 -0
- package/bundled-skills/hunt-shadow-api/SKILL.md +198 -0
- package/bundled-skills/hunt-source-leak/SKILL.md +345 -0
- package/bundled-skills/hunt-spa-api/SKILL.md +163 -0
- package/bundled-skills/hunt-springboot/SKILL.md +285 -0
- package/bundled-skills/hunt-sqli/SKILL.md +466 -0
- package/bundled-skills/hunt-ssrf/SKILL.md +396 -0
- package/bundled-skills/hunt-ssrf/references/details.md +179 -0
- package/bundled-skills/hunt-ssti/SKILL.md +163 -0
- package/bundled-skills/hunt-subdomain/SKILL.md +379 -0
- package/bundled-skills/hunt-tls-network/SKILL.md +399 -0
- package/bundled-skills/hunt-xxe/SKILL.md +466 -0
- package/bundled-skills/i-have-adhd/SKILL.md +170 -0
- package/bundled-skills/identity-access-management/SKILL.md +382 -0
- package/bundled-skills/identity-access-management/references/details.md +524 -0
- package/bundled-skills/incident-management/SKILL.md +484 -0
- package/bundled-skills/incident-response/SKILL.md +448 -0
- package/bundled-skills/incident-response/references/details.md +113 -0
- package/bundled-skills/interview-me/SKILL.md +248 -0
- package/bundled-skills/iso27001-compliance/SKILL.md +460 -0
- package/bundled-skills/jenkins/SKILL.md +462 -0
- package/bundled-skills/jev-social/SKILL.md +182 -0
- package/bundled-skills/jev-use/SKILL.md +158 -0
- package/bundled-skills/kubernetes-hardening/SKILL.md +154 -0
- package/bundled-skills/kubernetes-ops/SKILL.md +449 -0
- package/bundled-skills/kubernetes-ops/references/details.md +108 -0
- package/bundled-skills/kustomize/SKILL.md +478 -0
- package/bundled-skills/linux-administration/SKILL.md +367 -0
- package/bundled-skills/linux-hardening/SKILL.md +154 -0
- package/bundled-skills/llm-app-security/SKILL.md +389 -0
- package/bundled-skills/llm-app-security/references/details.md +674 -0
- package/bundled-skills/llm-caching/SKILL.md +334 -0
- package/bundled-skills/llm-cost-optimization/SKILL.md +311 -0
- package/bundled-skills/llm-fine-tuning/SKILL.md +329 -0
- package/bundled-skills/llm-gateway/SKILL.md +282 -0
- package/bundled-skills/llm-inference-scaling/SKILL.md +286 -0
- package/bundled-skills/llmops-platform-engineering/SKILL.md +472 -0
- package/bundled-skills/load-balancing/SKILL.md +403 -0
- package/bundled-skills/loki-logging/SKILL.md +479 -0
- package/bundled-skills/longbridge-derivatives/SKILL.md +117 -0
- package/bundled-skills/longbridge-derivatives/references/option.md +36 -0
- package/bundled-skills/longbridge-derivatives/references/options-advanced.md +101 -0
- package/bundled-skills/longbridge-derivatives/references/options-pnl.md +74 -0
- package/bundled-skills/longbridge-derivatives/references/options-strategy.md +82 -0
- package/bundled-skills/longbridge-derivatives/references/options-volatility.md +70 -0
- package/bundled-skills/longbridge-derivatives/references/warrant.md +12 -0
- package/bundled-skills/longbridge-quant/SKILL.md +151 -0
- package/bundled-skills/longbridge-quant/references/correlation.md +51 -0
- package/bundled-skills/longbridge-quant/references/execution-model.md +68 -0
- package/bundled-skills/longbridge-quant/references/factor-research.md +95 -0
- package/bundled-skills/longbridge-quant/references/factor-screen.md +101 -0
- package/bundled-skills/longbridge-quant/references/hedging.md +136 -0
- package/bundled-skills/longbridge-quant/references/ml-strategy.md +77 -0
- package/bundled-skills/longbridge-quant/references/multifactor.md +68 -0
- package/bundled-skills/longbridge-quant/references/pairs-trading.md +61 -0
- package/bundled-skills/longbridge-quant/references/quant-cli.md +133 -0
- package/bundled-skills/longbridge-quant/references/quant-stats.md +150 -0
- package/bundled-skills/longbridge-quant/references/seasonality.md +50 -0
- package/bundled-skills/longbridge-quant/references/strategy-optimizer.md +68 -0
- package/bundled-skills/longbridge-quant/references/volatility-strategy.md +52 -0
- package/bundled-skills/longbridge-research/SKILL.md +187 -0
- package/bundled-skills/longbridge-research/references/company-profile.md +96 -0
- package/bundled-skills/longbridge-research/references/company-tearsheet.md +82 -0
- package/bundled-skills/longbridge-research/references/competitive-analysis.md +81 -0
- package/bundled-skills/longbridge-research/references/consensus.md +92 -0
- package/bundled-skills/longbridge-research/references/coverage-initiation.md +76 -0
- package/bundled-skills/longbridge-research/references/defi-yield.md +60 -0
- package/bundled-skills/longbridge-research/references/finance-calendar.md +165 -0
- package/bundled-skills/longbridge-research/references/financial-planning.md +77 -0
- package/bundled-skills/longbridge-research/references/forecast-eps.md +39 -0
- package/bundled-skills/longbridge-research/references/fund-holder.md +44 -0
- package/bundled-skills/longbridge-research/references/hkipo-analysis.md +101 -0
- package/bundled-skills/longbridge-research/references/industry-peers.md +46 -0
- package/bundled-skills/longbridge-research/references/industry-rank.md +62 -0
- package/bundled-skills/longbridge-research/references/insider-trades.md +48 -0
- package/bundled-skills/longbridge-research/references/institution-rating.md +62 -0
- package/bundled-skills/longbridge-research/references/investment-ideas.md +69 -0
- package/bundled-skills/longbridge-research/references/investment-proposal.md +95 -0
- package/bundled-skills/longbridge-research/references/investors.md +87 -0
- package/bundled-skills/longbridge-research/references/onchain.md +70 -0
- package/bundled-skills/longbridge-research/references/post-investment.md +76 -0
- package/bundled-skills/longbridge-research/references/shareholder.md +72 -0
- package/bundled-skills/longbridge-research/references/short-positions.md +50 -0
- package/bundled-skills/longbridge-research/references/short-trades.md +50 -0
- package/bundled-skills/longbridge-research/references/stock-research.md +61 -0
- package/bundled-skills/longbridge-research/references/thesis-tracker.md +64 -0
- package/bundled-skills/m365-entra-attack/SKILL.md +423 -0
- package/bundled-skills/mac-mini-llm-lab/SKILL.md +350 -0
- package/bundled-skills/makepad-2-0-animation/SKILL.md +318 -0
- package/bundled-skills/makepad-2-0-animation/references/animator-reference.md +433 -0
- package/bundled-skills/makepad-2-0-dsl/SKILL.md +492 -0
- package/bundled-skills/makepad-2-0-dsl/references/dsl-syntax-reference.md +511 -0
- package/bundled-skills/makepad-2-0-dsl/references/extended-guide.md +56 -0
- package/bundled-skills/makepad-2-0-dsl/references/property-system.md +757 -0
- package/bundled-skills/makepad-2-0-events/SKILL.md +497 -0
- package/bundled-skills/makepad-2-0-events/references/event-patterns.md +802 -0
- package/bundled-skills/makepad-2-0-events/references/extended-guide.md +590 -0
- package/bundled-skills/makepad-2-0-layout/SKILL.md +499 -0
- package/bundled-skills/makepad-2-0-layout/references/extended-guide.md +243 -0
- package/bundled-skills/makepad-2-0-layout/references/layout-patterns.md +881 -0
- package/bundled-skills/makepad-2-0-widgets/SKILL.md +261 -0
- package/bundled-skills/makepad-2-0-widgets/references/widget-advanced.md +648 -0
- package/bundled-skills/makepad-2-0-widgets/references/widget-catalog.md +547 -0
- package/bundled-skills/mcp-server-security/SKILL.md +356 -0
- package/bundled-skills/mcp-server-security/references/details.md +745 -0
- package/bundled-skills/mdm-device-management/SKILL.md +404 -0
- package/bundled-skills/mdm-device-management/references/details.md +410 -0
- package/bundled-skills/meeting-distiller-pro/SKILL.md +120 -0
- package/bundled-skills/meme-coin-audit/SKILL.md +402 -0
- package/bundled-skills/mid-engagement-ir-detection/SKILL.md +377 -0
- package/bundled-skills/model-registry-governance/SKILL.md +452 -0
- package/bundled-skills/model-serving-kubernetes/SKILL.md +339 -0
- package/bundled-skills/model-supply-chain-security/SKILL.md +427 -0
- package/bundled-skills/mongodb/SKILL.md +436 -0
- package/bundled-skills/monte-carlo-analyze-root-cause/SKILL.md +12 -1
- package/bundled-skills/monte-carlo-asset-health/SKILL.md +12 -1
- package/bundled-skills/monte-carlo-context-detection/SKILL.md +170 -0
- package/bundled-skills/monte-carlo-context-detection/references/signal-definitions.md +46 -0
- package/bundled-skills/multi-tenant-llm-hosting/SKILL.md +435 -0
- package/bundled-skills/multi-tenant-llm-hosting/references/details.md +211 -0
- package/bundled-skills/mysql/SKILL.md +390 -0
- package/bundled-skills/new-relic/SKILL.md +472 -0
- package/bundled-skills/nfs-storage/SKILL.md +356 -0
- package/bundled-skills/object-storage/SKILL.md +378 -0
- package/bundled-skills/offensive-osint/SKILL.md +443 -0
- package/bundled-skills/okta-attack/SKILL.md +436 -0
- package/bundled-skills/ollama-stack/SKILL.md +379 -0
- package/bundled-skills/openclaw-deployment-hardening/SKILL.md +135 -0
- package/bundled-skills/openclaw-local-mac-mini/SKILL.md +426 -0
- package/bundled-skills/openclaw-local-mac-mini/references/details.md +221 -0
- package/bundled-skills/openclaw-security-hardening/SKILL.md +135 -0
- package/bundled-skills/openshift/SKILL.md +485 -0
- package/bundled-skills/opentelemetry/SKILL.md +438 -0
- package/bundled-skills/opentelemetry/references/details.md +78 -0
- package/bundled-skills/opentofu-migration/SKILL.md +349 -0
- package/bundled-skills/osint-methodology/SKILL.md +460 -0
- package/bundled-skills/osint-methodology/references/details.md +1350 -0
- package/bundled-skills/pci-dss-compliance/SKILL.md +446 -0
- package/bundled-skills/penetration-testing/SKILL.md +152 -0
- package/bundled-skills/performance-tuning/SKILL.md +381 -0
- package/bundled-skills/planetscale/SKILL.md +297 -0
- package/bundled-skills/platform-engineering/SKILL.md +348 -0
- package/bundled-skills/platform-engineering/references/details.md +944 -0
- package/bundled-skills/podman/SKILL.md +405 -0
- package/bundled-skills/policy-as-code/SKILL.md +434 -0
- package/bundled-skills/policy-as-code/references/details.md +204 -0
- package/bundled-skills/postgresql-devsec/SKILL.md +378 -0
- package/bundled-skills/prometheus-grafana/SKILL.md +469 -0
- package/bundled-skills/prompt-injection-defense/SKILL.md +483 -0
- package/bundled-skills/rag-infrastructure/SKILL.md +269 -0
- package/bundled-skills/rag-observability-evals/SKILL.md +444 -0
- package/bundled-skills/rag-observability-evals/references/details.md +92 -0
- package/bundled-skills/recon-scope-triage/SKILL.md +128 -0
- package/bundled-skills/redis/SKILL.md +421 -0
- package/bundled-skills/redteam-report-template/SKILL.md +370 -0
- package/bundled-skills/remotion-captions/SKILL.md +57 -0
- package/bundled-skills/remotion-captions/agents/openai.yaml +7 -0
- package/bundled-skills/remotion-captions/assets/remotion-icon.svg +4 -0
- package/bundled-skills/remotion-captions/display-captions.md +190 -0
- package/bundled-skills/remotion-captions/import-srt-captions.md +73 -0
- package/bundled-skills/remotion-captions/transcribe-captions.md +70 -0
- package/bundled-skills/remotion-create/SKILL.md +106 -0
- package/bundled-skills/remotion-create/agents/openai.yaml +7 -0
- package/bundled-skills/remotion-create/assets/remotion-icon.svg +4 -0
- package/bundled-skills/remotion-create/tailwind.md +11 -0
- package/bundled-skills/remotion-create/video-layout.md +9 -0
- package/bundled-skills/remotion-docs/SKILL.md +67 -0
- package/bundled-skills/remotion-docs/agents/openai.yaml +7 -0
- package/bundled-skills/remotion-docs/assets/remotion-icon.svg +4 -0
- package/bundled-skills/remotion-interactivity/SKILL.md +270 -0
- package/bundled-skills/remotion-interactivity/agents/openai.yaml +7 -0
- package/bundled-skills/remotion-interactivity/assets/remotion-icon.svg +4 -0
- package/bundled-skills/remotion-render/SKILL.md +48 -0
- package/bundled-skills/remotion-render/agents/openai.yaml +7 -0
- package/bundled-skills/remotion-render/assets/remotion-icon.svg +4 -0
- package/bundled-skills/remotion-render/transparent-videos.md +106 -0
- package/bundled-skills/report-writing/SKILL.md +426 -0
- package/bundled-skills/report-writing/references/details.md +187 -0
- package/bundled-skills/reverse-proxy/SKILL.md +420 -0
- package/bundled-skills/runbook-creation/SKILL.md +438 -0
- package/bundled-skills/runbook-creation/references/details.md +71 -0
- package/bundled-skills/saas-pricing-strategist/SKILL.md +169 -0
- package/bundled-skills/saas-security-posture/SKILL.md +415 -0
- package/bundled-skills/sast-scanning/SKILL.md +444 -0
- package/bundled-skills/sbom-supply-chain/SKILL.md +433 -0
- package/bundled-skills/score-eval/SKILL.md +35 -0
- package/bundled-skills/security-arsenal/SKILL.md +446 -0
- package/bundled-skills/security-arsenal/references/details.md +540 -0
- package/bundled-skills/security-automation/SKILL.md +146 -0
- package/bundled-skills/semantic-versioning/SKILL.md +434 -0
- package/bundled-skills/semantic-versioning/references/details.md +83 -0
- package/bundled-skills/service-mesh/SKILL.md +422 -0
- package/bundled-skills/soc2-compliance/SKILL.md +409 -0
- package/bundled-skills/sops-encryption/SKILL.md +124 -0
- package/bundled-skills/sre-dashboards/SKILL.md +143 -0
- package/bundled-skills/ssh-configuration/SKILL.md +324 -0
- package/bundled-skills/ssl-tls-management/SKILL.md +428 -0
- package/bundled-skills/ssl-tls-management/references/details.md +99 -0
- package/bundled-skills/startup-it-troubleshooting/SKILL.md +415 -0
- package/bundled-skills/supply-chain-attack-recon/SKILL.md +453 -0
- package/bundled-skills/supply-chain-attack-recon/references/details.md +258 -0
- package/bundled-skills/systemd-services/SKILL.md +379 -0
- package/bundled-skills/terraform-aws/SKILL.md +125 -0
- package/bundled-skills/terraform-azure/SKILL.md +415 -0
- package/bundled-skills/terraform-azure/references/details.md +231 -0
- package/bundled-skills/terraform-gcp/SKILL.md +369 -0
- package/bundled-skills/threat-modeling/SKILL.md +487 -0
- package/bundled-skills/user-management/SKILL.md +383 -0
- package/bundled-skills/using-agent-skills/SKILL.md +220 -0
- package/bundled-skills/vector-database-ops/SKILL.md +300 -0
- package/bundled-skills/vendor-management/SKILL.md +439 -0
- package/bundled-skills/vendor-management/references/details.md +109 -0
- package/bundled-skills/vercel-deployments/SKILL.md +296 -0
- package/bundled-skills/vllm-server/SKILL.md +236 -0
- package/bundled-skills/vmware-vcenter-attack/SKILL.md +412 -0
- package/bundled-skills/vpn-setup/SKILL.md +452 -0
- package/bundled-skills/vulnerability-scanning/SKILL.md +448 -0
- package/bundled-skills/waf-setup/SKILL.md +354 -0
- package/bundled-skills/waf-setup/references/details.md +211 -0
- package/bundled-skills/web2-recon/SKILL.md +440 -0
- package/bundled-skills/web2-recon/references/details.md +319 -0
- package/bundled-skills/web3-audit/SKILL.md +445 -0
- package/bundled-skills/web3-audit/references/details.md +224 -0
- package/bundled-skills/windows-hardening/SKILL.md +454 -0
- package/bundled-skills/windows-hardening/references/details.md +204 -0
- package/bundled-skills/windows-server/SKILL.md +318 -0
- package/bundled-skills/writing-guidelines/SKILL.md +60 -0
- package/bundled-skills/zero-trust/SKILL.md +461 -0
- package/package.json +1 -1
- package/skills_index.json +7874 -277
|
@@ -0,0 +1,438 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: runbook-creation
|
|
3
|
+
description: Create operational runbooks and standard operating procedures. Document
|
|
4
|
+
troubleshooting guides and recovery procedures. Use when documenting operational
|
|
5
|
+
knowledge.
|
|
6
|
+
category: security
|
|
7
|
+
risk: safe
|
|
8
|
+
source: https://github.com/BagelHole/DevOps-Security-Agent-Skills
|
|
9
|
+
source_repo: BagelHole/DevOps-Security-Agent-Skills
|
|
10
|
+
source_type: community
|
|
11
|
+
date_added: '2026-09-20'
|
|
12
|
+
license: MIT
|
|
13
|
+
license_source: https://github.com/BagelHole/DevOps-Security-Agent-Skills/blob/main/LICENSE
|
|
14
|
+
compatibility: Checklist and framework guidance; no privileged tooling required. Apply
|
|
15
|
+
controls through your own change process.
|
|
16
|
+
metadata:
|
|
17
|
+
author: devops-skills
|
|
18
|
+
version: '1.0'
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
# Runbook Creation
|
|
22
|
+
|
|
23
|
+
Create effective operational runbooks, standard operating procedures, and
|
|
24
|
+
troubleshooting guides that any on-call engineer can follow under pressure.
|
|
25
|
+
|
|
26
|
+
## Runbook Template — Full Structure
|
|
27
|
+
|
|
28
|
+
````markdown
|
|
29
|
+
# Runbook: [Service / Process Name]
|
|
30
|
+
|
|
31
|
+
**Owner:** [Team or individual]
|
|
32
|
+
**Last Reviewed:** YYYY-MM-DD
|
|
33
|
+
**Version:** X.Y
|
|
34
|
+
**Severity if unavailable:** SEV[1-4]
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Overview
|
|
39
|
+
|
|
40
|
+
Brief description of the service, why this runbook exists, and when to
|
|
41
|
+
use it.
|
|
42
|
+
|
|
43
|
+
## Prerequisites
|
|
44
|
+
|
|
45
|
+
- [ ] Required access / IAM role: [details]
|
|
46
|
+
- [ ] Tools installed: [kubectl, aws-cli, psql, etc.]
|
|
47
|
+
- [ ] VPN connected to [environment]
|
|
48
|
+
- [ ] Communication channel open: [Slack #channel]
|
|
49
|
+
|
|
50
|
+
## Procedure
|
|
51
|
+
|
|
52
|
+
### Step 1 — [Action Name]
|
|
53
|
+
|
|
54
|
+
[Explanation of what this step does and why.]
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
# command here
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
**Expected output:** [describe what success looks like]
|
|
61
|
+
|
|
62
|
+
### Step 2 — [Action Name]
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
# command here
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
**Expected output:** [description]
|
|
69
|
+
|
|
70
|
+
*(Continue with numbered steps...)*
|
|
71
|
+
|
|
72
|
+
## Verification
|
|
73
|
+
|
|
74
|
+
How to confirm the procedure succeeded:
|
|
75
|
+
|
|
76
|
+
- [ ] [Check 1 — e.g., health endpoint returns 200]
|
|
77
|
+
- [ ] [Check 2 — e.g., no errors in logs for 5 minutes]
|
|
78
|
+
- [ ] [Check 3 — e.g., metrics return to baseline]
|
|
79
|
+
|
|
80
|
+
## Rollback
|
|
81
|
+
|
|
82
|
+
If the procedure fails or causes unexpected issues:
|
|
83
|
+
|
|
84
|
+
### Rollback Step 1
|
|
85
|
+
```bash
|
|
86
|
+
# rollback command
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Rollback Step 2
|
|
90
|
+
```bash
|
|
91
|
+
# rollback command
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Troubleshooting
|
|
95
|
+
|
|
96
|
+
| Symptom | Likely Cause | Resolution |
|
|
97
|
+
|---------|-------------|------------|
|
|
98
|
+
| [symptom 1] | [cause] | [fix] |
|
|
99
|
+
| [symptom 2] | [cause] | [fix] |
|
|
100
|
+
|
|
101
|
+
## Escalation
|
|
102
|
+
|
|
103
|
+
If unresolved after [X] minutes:
|
|
104
|
+
- **Primary:** @[team-lead] — [phone/Slack]
|
|
105
|
+
- **Secondary:** @[manager] — [phone/Slack]
|
|
106
|
+
|
|
107
|
+
## Related Runbooks
|
|
108
|
+
|
|
109
|
+
- [Link to related runbook 1]
|
|
110
|
+
- [Link to related runbook 2]
|
|
111
|
+
|
|
112
|
+
## Change Log
|
|
113
|
+
|
|
114
|
+
| Date | Author | Change |
|
|
115
|
+
|------|--------|--------|
|
|
116
|
+
| YYYY-MM-DD | [Name] | Initial version |
|
|
117
|
+
````
|
|
118
|
+
|
|
119
|
+
## Overview
|
|
120
|
+
|
|
121
|
+
Failover the primary PostgreSQL instance to the synchronous replica when
|
|
122
|
+
the primary is unreachable or degraded. This runbook covers both planned
|
|
123
|
+
(maintenance) and unplanned (emergency) failover.
|
|
124
|
+
|
|
125
|
+
## Prerequisites
|
|
126
|
+
|
|
127
|
+
- [ ] DBA or SRE-level access to primary and replica hosts
|
|
128
|
+
- [ ] `psql` client installed (v14+)
|
|
129
|
+
- [ ] VPN connected to production network
|
|
130
|
+
- [ ] Slack channel #db-ops open
|
|
131
|
+
- [ ] Confirm replica is in sync: replication lag < 1 MB
|
|
132
|
+
|
|
133
|
+
## Procedure
|
|
134
|
+
|
|
135
|
+
### Step 1 — Verify Replica Health
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
psql -h replica.db.internal -U dba -d postgres -c \
|
|
139
|
+
"SELECT pg_is_in_recovery(), pg_last_wal_replay_lsn();"
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
**Expected output:** `pg_is_in_recovery = t`, LSN advancing.
|
|
143
|
+
|
|
144
|
+
### Step 2 — Stop Application Writes
|
|
145
|
+
|
|
146
|
+
```bash
|
|
147
|
+
kubectl scale deployment api-server --replicas=0 -n production
|
|
148
|
+
kubectl scale deployment worker --replicas=0 -n production
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
**Expected output:** Deployments scaled to 0 pods.
|
|
152
|
+
|
|
153
|
+
### Step 3 — Confirm Write Quiesce
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
psql -h primary.db.internal -U dba -d postgres -c \
|
|
157
|
+
"SELECT count(*) FROM pg_stat_activity WHERE state = 'active' AND query !~ 'pg_stat';"
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
**Expected output:** Count = 0 (no active queries).
|
|
161
|
+
|
|
162
|
+
### Step 4 — Promote Replica
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
psql -h replica.db.internal -U dba -d postgres -c "SELECT pg_promote();"
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
Wait up to 30 seconds, then confirm:
|
|
169
|
+
|
|
170
|
+
```bash
|
|
171
|
+
psql -h replica.db.internal -U dba -d postgres -c "SELECT pg_is_in_recovery();"
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
**Expected output:** `pg_is_in_recovery = f` (no longer a replica).
|
|
175
|
+
|
|
176
|
+
### Step 5 — Update DNS
|
|
177
|
+
|
|
178
|
+
```bash
|
|
179
|
+
aws route53 change-resource-record-sets \
|
|
180
|
+
--hosted-zone-id Z1234567890 \
|
|
181
|
+
--change-batch '{
|
|
182
|
+
"Changes": [{
|
|
183
|
+
"Action": "UPSERT",
|
|
184
|
+
"ResourceRecordSet": {
|
|
185
|
+
"Name": "db.internal.example.com",
|
|
186
|
+
"Type": "CNAME",
|
|
187
|
+
"TTL": 60,
|
|
188
|
+
"ResourceRecords": [{"Value": "replica.db.internal"}]
|
|
189
|
+
}
|
|
190
|
+
}]
|
|
191
|
+
}'
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
### Step 6 — Restart Application
|
|
195
|
+
|
|
196
|
+
```bash
|
|
197
|
+
kubectl scale deployment api-server --replicas=6 -n production
|
|
198
|
+
kubectl scale deployment worker --replicas=4 -n production
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
## Verification
|
|
202
|
+
|
|
203
|
+
- [ ] `psql -h db.internal.example.com -c "SELECT 1;"` returns successfully
|
|
204
|
+
- [ ] Application logs show successful DB connections (no errors for 5 min)
|
|
205
|
+
- [ ] Transaction throughput returns to baseline on Grafana dashboard
|
|
206
|
+
- [ ] No replication-lag alerts firing
|
|
207
|
+
|
|
208
|
+
## Rollback
|
|
209
|
+
|
|
210
|
+
If the promoted replica has issues, restore from the most recent backup:
|
|
211
|
+
|
|
212
|
+
```bash
|
|
213
|
+
# Restore latest automated snapshot (RDS example)
|
|
214
|
+
aws rds restore-db-instance-from-db-snapshot \
|
|
215
|
+
--db-instance-identifier prod-db-restored \
|
|
216
|
+
--db-snapshot-identifier prod-db-latest-snapshot
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
## Escalation
|
|
220
|
+
|
|
221
|
+
If unresolved after 15 minutes:
|
|
222
|
+
- **Primary:** @dba-lead — +1-555-0101
|
|
223
|
+
- **Secondary:** @platform-oncall — +1-555-0102
|
|
224
|
+
````
|
|
225
|
+
|
|
226
|
+
## Automation Scripts for Common Operations
|
|
227
|
+
|
|
228
|
+
### Service Health Check
|
|
229
|
+
|
|
230
|
+
```bash
|
|
231
|
+
#!/usr/bin/env bash
|
|
232
|
+
# health-check.sh — Check health of critical services
|
|
233
|
+
set -euo pipefail
|
|
234
|
+
|
|
235
|
+
SERVICES=(
|
|
236
|
+
"https://api.example.com/healthz"
|
|
237
|
+
"https://app.example.com/healthz"
|
|
238
|
+
"https://admin.example.com/healthz"
|
|
239
|
+
)
|
|
240
|
+
|
|
241
|
+
EXIT_CODE=0
|
|
242
|
+
|
|
243
|
+
for url in "${SERVICES[@]}"; do
|
|
244
|
+
HTTP_CODE=$(curl -so /dev/null -w '%{http_code}' --max-time 5 "$url" 2>/dev/null || echo "000")
|
|
245
|
+
if [ "$HTTP_CODE" -eq 200 ]; then
|
|
246
|
+
printf " OK %s\n" "$url"
|
|
247
|
+
else
|
|
248
|
+
printf " FAIL %s (HTTP %s)\n" "$url" "$HTTP_CODE"
|
|
249
|
+
EXIT_CODE=1
|
|
250
|
+
fi
|
|
251
|
+
done
|
|
252
|
+
|
|
253
|
+
exit $EXIT_CODE
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
### Log Collection for Incident Investigation
|
|
257
|
+
|
|
258
|
+
```bash
|
|
259
|
+
#!/usr/bin/env bash
|
|
260
|
+
# collect-logs.sh — Gather logs from multiple sources for incident review
|
|
261
|
+
set -euo pipefail
|
|
262
|
+
|
|
263
|
+
INCIDENT_ID="${1:?Usage: collect-logs.sh <incident-id>}"
|
|
264
|
+
OUTDIR="/tmp/incident-${INCIDENT_ID}"
|
|
265
|
+
mkdir -p "$OUTDIR"
|
|
266
|
+
|
|
267
|
+
echo "Collecting logs for incident $INCIDENT_ID..."
|
|
268
|
+
|
|
269
|
+
# Kubernetes pod logs (last 30 min)
|
|
270
|
+
kubectl logs -l app=api-server -n production --since=30m \
|
|
271
|
+
> "${OUTDIR}/api-server-pods.log" 2>&1
|
|
272
|
+
|
|
273
|
+
# CloudWatch Logs (last 30 min)
|
|
274
|
+
aws logs filter-log-events \
|
|
275
|
+
--log-group-name /ecs/production/api \
|
|
276
|
+
--start-time "$(date -d '30 minutes ago' +%s)000" \
|
|
277
|
+
--output text > "${OUTDIR}/cloudwatch-api.log" 2>&1
|
|
278
|
+
|
|
279
|
+
# Database slow query log
|
|
280
|
+
psql -h db.internal -U dba -d postgres -c \
|
|
281
|
+
"SELECT * FROM pg_stat_activity WHERE state != 'idle' ORDER BY query_start;" \
|
|
282
|
+
> "${OUTDIR}/db-active-queries.log" 2>&1
|
|
283
|
+
|
|
284
|
+
# System resource snapshot
|
|
285
|
+
kubectl top pods -n production > "${OUTDIR}/pod-resources.log" 2>&1
|
|
286
|
+
|
|
287
|
+
echo "Logs saved to $OUTDIR"
|
|
288
|
+
tar czf "${OUTDIR}.tar.gz" -C /tmp "incident-${INCIDENT_ID}"
|
|
289
|
+
echo "Archive: ${OUTDIR}.tar.gz"
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
### Certificate Expiry Check
|
|
293
|
+
|
|
294
|
+
```bash
|
|
295
|
+
#!/usr/bin/env bash
|
|
296
|
+
# cert-check.sh — Warn if TLS certificates expire within 30 days
|
|
297
|
+
set -euo pipefail
|
|
298
|
+
|
|
299
|
+
DOMAINS=(
|
|
300
|
+
"api.example.com"
|
|
301
|
+
"app.example.com"
|
|
302
|
+
"admin.example.com"
|
|
303
|
+
)
|
|
304
|
+
|
|
305
|
+
WARN_DAYS=30
|
|
306
|
+
TODAY=$(date +%s)
|
|
307
|
+
EXIT_CODE=0
|
|
308
|
+
|
|
309
|
+
for domain in "${DOMAINS[@]}"; do
|
|
310
|
+
EXPIRY=$(echo | openssl s_client -servername "$domain" -connect "${domain}:443" 2>/dev/null \
|
|
311
|
+
| openssl x509 -noout -enddate 2>/dev/null | cut -d= -f2)
|
|
312
|
+
EXPIRY_EPOCH=$(date -d "$EXPIRY" +%s 2>/dev/null || echo 0)
|
|
313
|
+
DAYS_LEFT=$(( (EXPIRY_EPOCH - TODAY) / 86400 ))
|
|
314
|
+
|
|
315
|
+
if [ "$DAYS_LEFT" -lt "$WARN_DAYS" ]; then
|
|
316
|
+
printf " WARN %s expires in %d days (%s)\n" "$domain" "$DAYS_LEFT" "$EXPIRY"
|
|
317
|
+
EXIT_CODE=1
|
|
318
|
+
else
|
|
319
|
+
printf " OK %s — %d days remaining\n" "$domain" "$DAYS_LEFT"
|
|
320
|
+
fi
|
|
321
|
+
done
|
|
322
|
+
|
|
323
|
+
exit $EXIT_CODE
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
### Disk Space Cleanup
|
|
327
|
+
|
|
328
|
+
```bash
|
|
329
|
+
#!/usr/bin/env bash
|
|
330
|
+
# disk-cleanup.sh — Free disk space on a host
|
|
331
|
+
set -euo pipefail
|
|
332
|
+
|
|
333
|
+
echo "=== Disk Usage Before ==="
|
|
334
|
+
df -h /
|
|
335
|
+
|
|
336
|
+
# Remove old journal logs (> 7 days)
|
|
337
|
+
journalctl --vacuum-time=7d 2>/dev/null || true
|
|
338
|
+
|
|
339
|
+
# Clean Docker artifacts
|
|
340
|
+
docker system prune -f --volumes 2>/dev/null || true
|
|
341
|
+
|
|
342
|
+
# Remove old log files
|
|
343
|
+
find /var/log -name "*.gz" -mtime +7 -delete 2>/dev/null || true
|
|
344
|
+
find /tmp -type f -mtime +3 -delete 2>/dev/null || true
|
|
345
|
+
|
|
346
|
+
echo "=== Disk Usage After ==="
|
|
347
|
+
df -h /
|
|
348
|
+
```
|
|
349
|
+
|
|
350
|
+
## Runbook Review Checklist
|
|
351
|
+
|
|
352
|
+
Use this checklist every time a runbook is created or updated.
|
|
353
|
+
|
|
354
|
+
```yaml
|
|
355
|
+
content_review:
|
|
356
|
+
- [ ] Title clearly identifies the service and operation
|
|
357
|
+
- [ ] Overview explains WHEN and WHY to use this runbook
|
|
358
|
+
- [ ] Prerequisites list all required access, tools, and setup
|
|
359
|
+
- [ ] Every step has a concrete command (no vague instructions)
|
|
360
|
+
- [ ] Expected output is documented for each step
|
|
361
|
+
- [ ] Verification section confirms success with specific checks
|
|
362
|
+
- [ ] Rollback section exists and has been tested
|
|
363
|
+
- [ ] Escalation contacts are current (names, phones, Slack handles)
|
|
364
|
+
- [ ] Troubleshooting table covers the top 3-5 known failure modes
|
|
365
|
+
|
|
366
|
+
usability_review:
|
|
367
|
+
- [ ] A new team member can follow the runbook without tribal knowledge
|
|
368
|
+
- [ ] Steps are numbered and sequential (no branching without clear labels)
|
|
369
|
+
- [ ] Commands can be copy-pasted (no placeholder values without explanation)
|
|
370
|
+
- [ ] Time estimates included for long-running steps
|
|
371
|
+
- [ ] No jargon or acronyms used without definition
|
|
372
|
+
|
|
373
|
+
maintenance_review:
|
|
374
|
+
- [ ] Owner and last-reviewed date are set
|
|
375
|
+
- [ ] Version number incremented
|
|
376
|
+
- [ ] Change log entry added
|
|
377
|
+
- [ ] Related runbooks section is up to date
|
|
378
|
+
- [ ] Links to dashboards and docs are valid (not broken)
|
|
379
|
+
```
|
|
380
|
+
|
|
381
|
+
## Runbook Testing Procedures
|
|
382
|
+
|
|
383
|
+
```yaml
|
|
384
|
+
testing_strategy:
|
|
385
|
+
dry_run:
|
|
386
|
+
frequency: "Every time a runbook is created or substantially edited"
|
|
387
|
+
method: "Walk through each step in a staging environment"
|
|
388
|
+
goal: "Verify commands work and output matches documentation"
|
|
389
|
+
|
|
390
|
+
peer_review:
|
|
391
|
+
frequency: "Every edit"
|
|
392
|
+
method: "Another engineer follows the runbook in staging without help"
|
|
393
|
+
goal: "Confirm the runbook is self-contained and unambiguous"
|
|
394
|
+
|
|
395
|
+
scheduled_validation:
|
|
396
|
+
frequency: "Quarterly"
|
|
397
|
+
method: "SRE team picks 5 runbooks at random, executes in staging"
|
|
398
|
+
goal: "Catch runbooks that have drifted from production reality"
|
|
399
|
+
|
|
400
|
+
incident_triggered:
|
|
401
|
+
trigger: "Any time a runbook is used in a real incident"
|
|
402
|
+
method: "Post-mortem includes runbook accuracy assessment"
|
|
403
|
+
goal: "Capture improvements while the experience is fresh"
|
|
404
|
+
|
|
405
|
+
automation_testing:
|
|
406
|
+
method: "CI pipeline validates bash scripts with shellcheck and dry-run"
|
|
407
|
+
example: |
|
|
408
|
+
# .github/workflows/runbook-lint.yml
|
|
409
|
+
name: Lint Runbook Scripts
|
|
410
|
+
on: [pull_request]
|
|
411
|
+
jobs:
|
|
412
|
+
shellcheck:
|
|
413
|
+
runs-on: ubuntu-latest
|
|
414
|
+
steps:
|
|
415
|
+
- uses: actions/checkout@v4
|
|
416
|
+
- name: ShellCheck
|
|
417
|
+
run: |
|
|
418
|
+
find runbooks/ -name "*.sh" -exec shellcheck {} +
|
|
419
|
+
```
|
|
420
|
+
|
|
421
|
+
|
|
422
|
+
|
|
423
|
+
## When to Use
|
|
424
|
+
|
|
425
|
+
- Creating or updating operational runbooks, SOPs, on-call procedures, or incident recovery guides.
|
|
426
|
+
|
|
427
|
+
## Limitations
|
|
428
|
+
|
|
429
|
+
- Runbooks must be validated in staging; examples use placeholder hostnames and account IDs.
|
|
430
|
+
- Docs-only import: upstream template files are not bundled.
|
|
431
|
+
|
|
432
|
+
### Example
|
|
433
|
+
|
|
434
|
+
```markdown
|
|
435
|
+
Draft a SEV2 database failover runbook with prerequisites, verification, and rollback.
|
|
436
|
+
```
|
|
437
|
+
|
|
438
|
+
> Adapted from [BagelHole/DevOps-Security-Agent-Skills](https://github.com/BagelHole/DevOps-Security-Agent-Skills) (MIT); frontmatter, When to Use/Limitations, and safety boundaries added for upstream compliance. Docs-only import: helper scripts and templates not bundled.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Details (moved from SKILL.md)
|
|
2
|
+
|
|
3
|
+
> Extended reference content for `runbook-creation`, kept under `references/` so the entrypoint stays within the audit budget.
|
|
4
|
+
|
|
5
|
+
## Versioning Strategy
|
|
6
|
+
|
|
7
|
+
```yaml
|
|
8
|
+
versioning:
|
|
9
|
+
storage: "Git repository — one directory per service, one file per runbook"
|
|
10
|
+
naming: "runbooks/<service>/<operation>.md"
|
|
11
|
+
branching: "PRs required for all changes; reviewed by service owner"
|
|
12
|
+
|
|
13
|
+
version_scheme:
|
|
14
|
+
format: "MAJOR.MINOR"
|
|
15
|
+
major_bump: "Procedure changes that alter the steps or their order"
|
|
16
|
+
minor_bump: "Clarifications, typo fixes, updated contact info"
|
|
17
|
+
|
|
18
|
+
directory_layout: |
|
|
19
|
+
runbooks/
|
|
20
|
+
api-server/
|
|
21
|
+
deploy.md
|
|
22
|
+
rollback.md
|
|
23
|
+
scale-up.md
|
|
24
|
+
database/
|
|
25
|
+
failover.md
|
|
26
|
+
backup-restore.md
|
|
27
|
+
vacuum-maintenance.md
|
|
28
|
+
infrastructure/
|
|
29
|
+
dns-update.md
|
|
30
|
+
certificate-renewal.md
|
|
31
|
+
disk-cleanup.md
|
|
32
|
+
|
|
33
|
+
review_requirements:
|
|
34
|
+
- PR must be approved by the service owner
|
|
35
|
+
- CI must pass (shellcheck for scripts, markdown lint)
|
|
36
|
+
- Reviewer confirms they can follow the steps independently
|
|
37
|
+
|
|
38
|
+
retention: "Git history serves as full audit trail — never delete old versions"
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
## Runbook Index Template
|
|
43
|
+
|
|
44
|
+
Keep a top-level index so engineers can find the right runbook quickly.
|
|
45
|
+
|
|
46
|
+
```markdown
|
|
47
|
+
# Runbook Index
|
|
48
|
+
|
|
49
|
+
| Service | Runbook | Severity | Owner | Last Tested |
|
|
50
|
+
|---------|---------|----------|-------|-------------|
|
|
51
|
+
| API Server | [Deploy] (api-server/deploy.md) | — | @platform | 2025-05-01 |
|
|
52
|
+
| API Server | [Rollback] (api-server/rollback.md) | SEV1 | @platform | 2025-05-01 |
|
|
53
|
+
| Database | [Failover] (database/failover.md) | SEV1 | @dba | 2025-04-15 |
|
|
54
|
+
| Database | [Backup Restore] (database/backup-restore.md) | SEV2 | @dba | 2025-04-15 |
|
|
55
|
+
| Infra | [DNS Update] (infrastructure/dns-update.md) | SEV2 | @sre | 2025-06-01 |
|
|
56
|
+
| Infra | [Cert Renewal] (infrastructure/certificate-renewal.md) | SEV3 | @sre | 2025-06-01 |
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
## Best Practices
|
|
61
|
+
|
|
62
|
+
- Write runbooks for the engineer at 3 AM — clear, sequential, copy-pasteable
|
|
63
|
+
- Include expected output so the operator knows if a step succeeded
|
|
64
|
+
- Always provide a rollback path; every action should be reversible
|
|
65
|
+
- Test runbooks in staging before they are needed in production
|
|
66
|
+
- Keep runbooks in version control alongside the code they support
|
|
67
|
+
- Assign an owner to every runbook; ownerless runbooks rot fast
|
|
68
|
+
- After every incident, update the relevant runbook with lessons learned
|
|
69
|
+
- Automate repetitive runbook steps into scripts, but keep the runbook as
|
|
70
|
+
the orchestration guide so operators understand the "why"
|
|
71
|
+
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: saas-pricing-strategist
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
description: Design, optimize, and test pricing strategies for SaaS products using
|
|
5
|
+
data-driven frameworks, competitive analysis, and psychological pricing principles.
|
|
6
|
+
author: yundu-ai
|
|
7
|
+
tags:
|
|
8
|
+
- saas
|
|
9
|
+
- pricing
|
|
10
|
+
- strategy
|
|
11
|
+
- monetization
|
|
12
|
+
- business
|
|
13
|
+
- analytics
|
|
14
|
+
model: claude
|
|
15
|
+
source_repo: demo112/yunqu-ai-skills
|
|
16
|
+
source_type: community
|
|
17
|
+
source: community
|
|
18
|
+
date_added: '2026-09-21'
|
|
19
|
+
risk: unknown
|
|
20
|
+
---
|
|
21
|
+
## When to Use
|
|
22
|
+
- Use when this upstream workflow matches the user's stated goal.
|
|
23
|
+
- Use when the task requires the procedures documented in this skill.
|
|
24
|
+
|
|
25
|
+
# SaaS Pricing Strategist
|
|
26
|
+
|
|
27
|
+
You are a pricing strategist who has helped 100+ SaaS companies optimize their pricing. You combine economic theory, behavioral psychology, and real market data to find the price that maximizes revenue.
|
|
28
|
+
|
|
29
|
+
## Pricing Framework
|
|
30
|
+
|
|
31
|
+
### Step 1: Understand the Value Metric
|
|
32
|
+
|
|
33
|
+
The value metric is what you charge for. It must:
|
|
34
|
+
1. **Grow with customer usage** — as they get more value, they pay more
|
|
35
|
+
2. **Be predictable** — customers can forecast their costs
|
|
36
|
+
3. **Be simple to understand** — no calculator needed
|
|
37
|
+
|
|
38
|
+
**Common Value Metrics:**
|
|
39
|
+
| Business Type | Good Value Metrics | Bad Value Metrics |
|
|
40
|
+
|---|---|---|
|
|
41
|
+
| Project Management | Users, Projects | Features, Storage |
|
|
42
|
+
| Email Marketing | Contacts, Emails sent | Users, Storage |
|
|
43
|
+
| Analytics | Events, Page views | Users, Dashboards |
|
|
44
|
+
| API Service | API calls, Tokens | Users, Endpoints |
|
|
45
|
+
| Storage | GB stored, GB transferred | Users, Files |
|
|
46
|
+
| CRM | Contacts, Revenue managed | Users, Fields |
|
|
47
|
+
|
|
48
|
+
### Step 2: Determine Price Range
|
|
49
|
+
|
|
50
|
+
Use the **Van Westendorp Price Sensitivity Meter** — ask 4 questions:
|
|
51
|
+
|
|
52
|
+
1. At what price would you consider the product so cheap you'd question its quality? (Too Cheap)
|
|
53
|
+
2. At what price would you consider the product a bargain? (Cheap)
|
|
54
|
+
3. At what price would you consider the product expensive but still worth it? (Expensive)
|
|
55
|
+
4. At what price would you consider the product too expensive to consider? (Too Expensive)
|
|
56
|
+
|
|
57
|
+
Plot the curves to find:
|
|
58
|
+
- **Optimal Price Point**: Where "Too Cheap" and "Too Expensive" intersect
|
|
59
|
+
- **Indifference Price**: Where "Cheap" and "Expensive" intersect
|
|
60
|
+
- **Acceptable Range**: Between these two points
|
|
61
|
+
|
|
62
|
+
### Step 3: Tier Design
|
|
63
|
+
|
|
64
|
+
Follow the **Good-Better-Best** framework:
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
|
68
|
+
│ Starter │ │ Growth │ │ Scale │
|
|
69
|
+
│ $29/mo │ │ $79/mo │ │ $199/mo │
|
|
70
|
+
│ │ │ │ │ │
|
|
71
|
+
│ • 5 users │ │ • 25 users │ │ • Unlimited │
|
|
72
|
+
│ • 1K events │ │ • 10K events│ │ • Unlimited │
|
|
73
|
+
│ • Basic │ │ • Advanced │ │ • Everything│
|
|
74
|
+
│ reports │ │ analytics │ │ + Priority │
|
|
75
|
+
│ │ │ • API access│ │ support │
|
|
76
|
+
│ │ │ │ │ + SSO │
|
|
77
|
+
│ │ │ │ │ + Audit log │
|
|
78
|
+
└─────────────┘ └─────────────┘ └─────────────┘
|
|
79
|
+
↑ Anchor ↑ Target ↑ Aspiration
|
|
80
|
+
|
|
81
|
+
Most popular: Growth (anchor effect drives mid-tier selection)
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Step 4: Psychological Pricing Tactics
|
|
85
|
+
|
|
86
|
+
| Tactic | Effect | Example |
|
|
87
|
+
|---|---|---|
|
|
88
|
+
| Charm pricing | Left-digit effect | $79 not $80 |
|
|
89
|
+
| Anchoring | High tier makes mid-tier look reasonable | Show Enterprise first |
|
|
90
|
+
| Decoy effect | Make target tier look like best deal | Add "feature gap" to push up |
|
|
91
|
+
| Annual discount | Lock in + lower churn | "Save 20% with annual" |
|
|
92
|
+
| Freemium gate | Drive adoption, convert later | Free up to X, pay above |
|
|
93
|
+
| Per-seat expansion | Natural revenue growth | More users = more revenue |
|
|
94
|
+
|
|
95
|
+
### Step 5: Competitive Positioning Matrix
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
Price ↑
|
|
99
|
+
│
|
|
100
|
+
$200 │ ● Competitor D
|
|
101
|
+
│ ● Competitor C
|
|
102
|
+
$100 │
|
|
103
|
+
│ ● You (target)
|
|
104
|
+
$50 │ ● Comp A ● Comp B
|
|
105
|
+
│
|
|
106
|
+
$0 └──────────────────────────→ Features
|
|
107
|
+
Basic Good Best
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
## Pricing Page Copy Template
|
|
111
|
+
|
|
112
|
+
```
|
|
113
|
+
## [Product Name] Pricing
|
|
114
|
+
|
|
115
|
+
### Simple, transparent pricing. No hidden fees.
|
|
116
|
+
|
|
117
|
+
[Toggle: Monthly / Annual (Save 20%)]
|
|
118
|
+
|
|
119
|
+
| | Starter | Growth | Scale |
|
|
120
|
+
|---|---|---|---|
|
|
121
|
+
| Price | $29/mo | $79/mo | $199/mo |
|
|
122
|
+
| Value Metric | Up to 5 users | Up to 25 users | Unlimited |
|
|
123
|
+
| Core Feature | ✅ | ✅ | ✅ |
|
|
124
|
+
| Advanced Feature | — | ✅ | ✅ |
|
|
125
|
+
| Premium Feature | — | — | ✅ |
|
|
126
|
+
| Support | Community | Email | Priority + Slack |
|
|
127
|
+
| | [Get Started] | [Most Popular] | [Contact Sales] |
|
|
128
|
+
|
|
129
|
+
All plans include: [Free features everyone gets]
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
## Pricing Experiment Framework
|
|
133
|
+
|
|
134
|
+
When testing pricing changes:
|
|
135
|
+
|
|
136
|
+
1. **Measure**: Revenue per user (not just conversion rate)
|
|
137
|
+
2. **Segment**: New vs. existing users, by source, by company size
|
|
138
|
+
3. **Duration**: Run for at least 2 full billing cycles
|
|
139
|
+
4. **Guard rails**: Set max revenue drop threshold (e.g., 10%) before stopping
|
|
140
|
+
5. **Rollback plan**: Always have a quick way to revert
|
|
141
|
+
|
|
142
|
+
**Common experiments:**
|
|
143
|
+
- A/B test tier prices (±20%)
|
|
144
|
+
- Test freemium vs. free trial
|
|
145
|
+
- Test annual discount (15% vs. 20% vs. 25%)
|
|
146
|
+
- Test per-seat vs. flat pricing
|
|
147
|
+
- Test add-on pricing vs. all-inclusive
|
|
148
|
+
|
|
149
|
+
## Red Flags in Pricing
|
|
150
|
+
|
|
151
|
+
🚩 **"Let's just undercut everyone"** — Race to the bottom, unsustainable
|
|
152
|
+
🚩 **"One price fits all"** — Leaving money on the table from enterprise
|
|
153
|
+
🚩 **"Free forever for everyone"** — No conversion path = no revenue
|
|
154
|
+
🚩 **"We'll figure out pricing later"** — Hard to raise prices after launch
|
|
155
|
+
🚩 **"Price based on our costs"** — Price based on VALUE, not cost
|
|
156
|
+
🚩 **"Too many tiers"** — More than 4 tiers causes decision paralysis
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
## Examples
|
|
160
|
+
|
|
161
|
+
```text
|
|
162
|
+
User: Apply this skill to my current task.
|
|
163
|
+
Assistant: Follow the workflow in this skill, cite limitations, and ask before risky steps.
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
## Limitations
|
|
167
|
+
|
|
168
|
+
- Imported upstream skill; verify credentials, permissions, and safety boundaries before execution.
|
|
169
|
+
- Does not replace environment-specific validation, testing, or maintainer review.
|