GuardDuty Cost Optimization — AWS DevOps Agent Skill¶
A read-only Amazon GuardDuty cost optimization skill for AWS DevOps Agent. It identifies, quantifies, and prioritizes GuardDuty cost-reduction opportunities aligned with Monitoring GuardDuty usage and estimating costs and GuardDuty pricing, and generates a shareable report artifact.
Purpose¶
GuardDuty is pay-as-you-go per protection plan, priced on the volume of data each plan analyzes — so spend is driven by which plans are enabled and how much they process, not by any per-detector fee. This skill teaches the agent the GuardDuty billing model (including the Runtime-Monitoring/VPC-Flow-Log offset and the fact that customer log configuration does not reduce GuardDuty cost), reads the per-data-source AWS/GuardDuty CloudWatch usage metrics to attribute spend by plan, weighs each plan's cost against its finding activity, and recommends compliance-aware reductions — always as a cost-vs-security tradeoff.
Key Capabilities¶
- Inventories detectors, enabled protection plans, Runtime Monitoring coverage, and organization member coverage via read-only APIs
- Attributes spend per protection plan using the
AWS/GuardDuty(andAWS/GuardDuty/MalwareProtection) CloudWatch usage metrics, reconciled against Cost Explorer when available - Flags high-cost/low-signal plans by weighing per-plan cost against
GetFindingsStatisticsfinding activity - Sizes the Runtime Monitoring ↔ VPC Flow Log charge offset (enabling the runtime agent stops VPC Flow Log processing charges on monitored instances)
- Reviews S3 Protection and Malware Protection for S3 scan volume as cost-vs-risk tradeoffs
- Projects post-free-trial monthly cost from observed trial usage — before the bill lands
- Flags duplicate/inconsistent multi-account or unused-Region coverage
- Produces a severity-ranked report artifact with a per-plan spend table, free-trial projection, priority matrix, and next steps
Prerequisites¶
1. An AWS DevOps Agent Space with the target AWS account configured as a cloud source¶
2. IAM permissions for the DevOps Agent's primary cloud-source role¶
No additional IAM permissions are required. Every call this skill makes is read-only and covered by the AWS managed AIDevOpsAgentAccessPolicy:
guardduty:ListDetectors,guardduty:GetDetector,guardduty:ListMembers,guardduty:GetMemberDetectorsguardduty:GetMasterAccount,guardduty:ListOrganizationAdminAccounts,guardduty:GetFindingsStatisticscloudwatch:GetMetricData,cloudwatch:GetMetricStatistics,cloudwatch:ListMetricsorganizations:DescribeOrganization,organizations:ListAccounts(organization scope)ce:GetCostAndUsage(dollar signal for sizing opportunities), granted viace:Get*
There is no CloudFormation template to deploy for this skill.
The skill operates entirely in read-only mode — it never calls CreateDetector, UpdateDetector, DeleteDetector, or any protection-plan mutation.
Limitations¶
- GuardDuty usage metrics are published hourly and can lag up to ~24 hours; the skill uses a multi-day window for sizing.
- Without Cost Explorer access, findings are still reported but dollar impact is labeled "not quantified".
- The skill reads usage metrics and finding statistics only — it does not read finding detail content.
- GuardDuty is a security control: the skill frames every reduction as a cost-vs-risk tradeoff and never recommends disabling coverage on cost grounds alone. The security decision remains the user's.
- Customer-side log configuration (VPC Flow Logs, CloudTrail, S3 data events) does not affect GuardDuty cost, so the skill does not recommend changing it to save GuardDuty spend.
Agent Types¶
- On-demand (Chat tasks) — "why is my GuardDuty bill so high", "which protection plan costs the most".
- Evaluation — proactive cost-optimization recommendations, including pre-trial-end projections.
Select Generic (All agents) if you want the skill available to all agent types — required if you use it with the unified-security-cost-optimizer custom agent.
Uploading to AWS DevOps Agent¶
Reference: Uploading a skill
Build the zip from inside the skill directory so SKILL.md sits at the archive root, excluding development-only files:
cd skills/guardduty-cost-optimization
zip -r ../guardduty-cost-optimization.zip . \
-x 'README.md' 'CHANGELOG.md' '.skilleval.yaml' '.skilleval.yml' 'evals/*'
Then in the Operator Web App: Skills → Add skill → Upload skill, drag in the zip, select agent types (On-demand and Evaluation, or Generic for the custom agent), review validation, and Upload.
How to Use This Skill¶
In DevOps Agent Chat:
- "Review my GuardDuty costs for account 123456789012 across all regions."
- "Which GuardDuty protection plan is costing me the most?"
- "Is GuardDuty S3 Protection worth it for my workload?"
- "Project my GuardDuty spend after the free trial ends."
- "Would enabling Runtime Monitoring reduce my VPC Flow Log charges?"
The agent will inventory protection plans, attribute per-plan spend from usage metrics, weigh cost against finding activity, and generate guardduty-cost-optimization-<account-id>-<YYYY-MM-DD>.md.
Non-production disclaimer¶
⚠️ This skill is sample code, not intended for production use without additional review and testing. Validate in a non-production environment first. Recommendations are derived from observed usage and finding statistics — GuardDuty is a security control, so review the security impact of any coverage reduction before applying, and never disable a protection plan you have not assessed for risk.