agentcore-ops-review
Comprehensive operational review procedures for Amazon Bedrock AgentCore resources aligned with the AWS Well-Architected Framework.
Skill by pamvasOfficial
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/aws-agentcore-ops-review
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: cloud, data, security, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/agentcore-ops-review
What's inside
- Skill name
agentcore-ops-review- Description
- Comprehensive operational review procedures for Amazon Bedrock AgentCore resources aligned with the AWS Well-Architected Framework. Covers four check areas — Runtime Resilience, Gateway Health, Memory & Knowledge Effectiveness, and Resource Utilization & Operational Hygiene — plus runtime observability signals from CloudWatch. Use this skill when a user asks to review, audit, or assess Amazon Bedrock AgentCore workloads, perform an AgentCore operational readiness review, investigate agent runtime failures, audit memory/knowledge pipeline health, or review gateway resilience and resource hygiene. Triggers on requests like "AgentCore review", "AgentCore best practices audit", "review my AgentCore runtimes", "AgentCore health check", "audit my agent memory pipelines", or "ORR for AgentCore".
- License
- Apache-2.0
- Metadata
- author: pamvas · version: 1.0.3 · aws-devops-agent-skills.agent-types: CHAT · aws-devops-agent-skills.aws-services: Amazon Bedrock AgentCore · aws-devops-agent-skills.technical-domains: Machine Learning, GenAI
- Instructions
- 169 lines in SKILL.md · view on GitHub
Files (13)
- .skilleval.yaml
- CHANGELOG.md
- README.md
- SKILL.md
- eval_queries.json · evals/
- evals.json · evals/
- agentcore-context.json · evals/files/
- iam-policy-linked-account.json · references/
- iam-policy-management-account.json · references/
- iam-policy-observability-only.json · references/
- iam-policy.json · references/
- pillar-checks.md · references/
- report-template.md · references/
SKILL.md (first lines)
# Bedrock AgentCore Operational Review
Use this skill when performing an operational review of Amazon Bedrock AgentCore resources, investigating agent runtime failures, auditing memory/knowledge pipeline health, or reviewing gateway resilience and resource hygiene.
## Overview
This skill provides procedures for a review of AgentCore resources across four check areas mapped to the AWS Well-Architected Framework:
- **Runtime Resilience** (Reliability) — Failed/stuck runtimes and endpoints, single-AZ VPC placement, endpoint version drift, DEFAULT-endpoint-only deployments
- **Gateway Health** (Reliability) — Gateway status, target redundancy and health, policy engine attachment, target synchronization freshness
- **Memory & Knowledge Effectiveness** (Performance Efficiency) — Extraction pipeline errors, empty long-term memory, high ingestion error rate, provisioned-but-never-populated memories
- **Resource Utilization & Operational Hygiene** (Operational Excellence) — Idle resources, consolidation opportunities, low overall utilization
- **Runtime Observability** (cross-pillar) — Session counts, invocations, throttles, vCPU-hours, GB-hours per runtime
This is a **READ-ONLY** review. No modifications are made to any resource, and it never invokes an agent (`InvokeAgentRuntime`), reads no prompts or responses, and makes no other data-plane calls. **One exception:** for long-term memories the skill calls `bedrock-agentcore:ListMemoryRecords` (a data-plane API) solely to obtain a **record count**. That response can include a `content` field carrying extracted, potentially PII-bearing memory content; the skill uses **only the count** and never parses, logs, stores, or reproduces `content`. See "Memory record data handling" below.
## Data Source Boundaries (IMPORTANT — IAM footprint)
The standard `AIDevOpsAgentAccessPolicy` covers `bedrock:*` read actions but does **NOT** include the `bedrock-agentcore:*` namespace. (Note: `bedrock-agentcore-control` is the SDK client name, not an IAM prefix — all control-plane actions such as `ListAgentRuntimes`, `GetMemory`, and `ListGateways` authorize under the single service prefix `bedrock-agentcore:`.) Two modes:
1. **Runtime-observability-only mode** — relies exclusively on CloudWatch metrics (`cloudwatch:GetMetricData`, `cloudwatch:ListMetrics`) against namespace `AWS/Bedrock-AgentCore`. Requires no `bedrock-agentcore:` additions. When an account isn't using AgentCore, the namespace is simply empty ("no activity detected") — this is not a failure.
2. **Full control-plane mode** — adds read-only `bedrock-agentcore:` control-plane List/Get actions and `ec2:DescribeSubnets` to enable the runtime/gateway/memory/utilization checks. It also uses one **data-plane** action, `bedrock-agentcore:ListMemoryRecords`, for the long-term-memory record count only (see "Memory record data handling" below). See `references/iam-policy-linked-account.json`.
If a required permission is missing, the affected check degrades to a **visibility limit** (reported as "signal unavailable / check skipped") rather than failing the review or producing a false finding.
**Memory record data handling:** `bedrock-agentcore:ListMemoryRecords` is a data-plane API whose `MemoryRecordSummary` entries include a required `content` field — the extracted facts/preferences/summaries a long-term memory has stored, which can contain end-user PII. This skill calls it **only** to count records for AC-MEM-2 and never reads, parses, logs, stores, transforms, or reproduces the `content` field. If you prefer zero data-plane access, omit this action from the IAM policy: AC-MEM-2 then degrades to a visibility limit while all other memory checks (which use CloudWatch ingestion metrics) continue to work.
**Seam with `agentcore-observability-setup`:** This skill assesses operational posture from *existing* telemetry; it does not configure or validate observability wiring. Where telemetry is absent, this skill reports a visibility limit and defers the configuration gap to `agentcore-observability-setup` — that skill owns the observability-wiring finding (Transaction Search, OTEL/ADOT, log delivery, X-Ray resource policy), while this skill reports only the posture consequence. A customer running both should not see two overlapping findings on the same resource.
## Step 1: Discover Account and Regions
1. Call `sts:GetCallerIdentity` to determine the account.
2. Discover AgentCore-active regions:
- Query Cost Explorer: `ce:GetDimensionValues` (dimension SERVICE, last 30 days), match "Amazon Bedrock AgentCore".
- Then `ce:GetCostAndUsage` for that service grouped by REGION; select top regions by UnblendedCost.
- If no AgentCore spend is found, fall back to probing `cloudwatch:ListMetrics` (namespace `AWS/Bedrock-AgentCore`) in the customer's primary regions to detect activity.
3. If no AgentCore activity is detected in any region, stop: "No AgentCore usage detected in the last 30 days."
## Step 2: Runtime Resilience Pillar (Reliability)
Discover runtimes and enrich each with endpoints and versions:
- `bedrock-agentcore:ListAgentRuntimes` → `GetAgentRuntime` (status, `failureReason`, `networkConfiguration`)
- `bedrock-agentcore:ListAgentRuntimeEndpoints` (status, `liveVersion`, `targetVersion`, name)
- `bedrock-agentcore:ListAgentRuntimeVersions` (to compute latest version + drift)
- `ec2:DescribeSubnets` (resolve VPC subnet IDs to AZs — endpoints carry NO AZ data)
| Check | Rule | Severity |
|-------|------|----------|
| AC-RUN-1 | Runtime/endpoint in `CREATE_FAILED`/`UPDATE_FAILED`, or stuck in `CREATING`/`UPDATING` > 1 hour | **Critical** |
| AC-RUN-2 | VPC-mode runtime whose subnets all resolve to a single AZ (PUBLIC mode exempt) | **High** |
| AC-RUN-3 | Live endpoint ≥ 3 versions behind latest runtime version | **Medium** |
| AC-RUN-4 | Actively-updated runtime (2+ versions) served only by the auto-updating DEFAULT endpoint | **Low** |
**Key fact:** Endpoints are a versioning/traffic-routing construct, not a redundancy mechanism. AZ fault tolerance is derived exclusively from the runtime's VPC subnet configuration. If `ec2:DescribeSubnets` is unavailable, AC-RUN-2 degrades to "AZ distribution unknown".
## Step 3: Gateway Health (Reliability)
Discover gateways and their targets:
- `bedrock-agentcore:ListGateways` → `GetGateway` (status, protocolType, authorizerType, `policyEngineConfiguration`)
- `bedrock-agentcore:ListGatewayTargets` → `GetGatewayTarget` (status, `targetConfiguration`, `lastSynchronizedAt`, credential providers)
Target type derived from `targetConfiguration.mcp`: Lambda, MCP Server, API Gateway, OpenAPI Schema, Smithy Model.
| Risk Level | Condition |
|------------|-----------|
| **Critical** | Gateway not `READY`, zero targets, OR all targets unhealthy |
| **Warning** | Single target (no redundancy), no policy engine attached, some unhealthy targets, OR stale sync (> 7 days) |
| **Healthy** | Multiple READY targets, policy engine attached, recent synchronization |
Unhealthy target statuses: `FAILED`, `UPDATE_UNSUCCESSFUL`, `SYNCHRONIZE_UNSUCCESSFUL`. Stale sync threshold: `lastSynchronizedAt` older than 7 days.
## Step 4: Memory & Knowledge Effectiveness (Performance Efficiency)
Discover memories and their strategies, then query CloudWatch ingestion metrics:
- `bedrock-agentcore:ListMemories` → `GetMemory` (status, createdAt, **configured strategies**)
- `bedrock-agentcore:ListMemoryRecords` — **data-plane call, count only** (long-term-strategy memories). Read the returned record *count*; do not read the `content` field (see "Memory record data handling")
- `cloudwatch:GetMetricData` (namespace `AWS/Bedrock-AgentCore`): per-memory `Invocations`/`Errors` for the `Ingestion` operation, and `Invocations` for the `CreateEvent` operation (30-day window)
**All rules are strategy-aware** — read `GetMemory` strategies first. Record-count rules apply ONLY to memories with a long-term strategy; short-term-only memories are never flagged as empty.
| Check | Rule | Severity |
|-------|------|----------|
| AC-MEM-1 | Long-term memory with CloudWatch ingestion `Errors > 0` | **High** |
| AC-MEM-2 | Long-term memory with < 10 records (escalates to High if 0 records AND > 7 days old) | **Medium→High** |
| AC-MEM-3 | Ingestion error rate > 20% (`Errors / Invocations`) | **High** |
| AC-MEM-4 | Provisioned but never populated: zero `CreateEvent` activity AND > 7 days old | **Medium** |
**Safety rule:** `CreateEvent` activity is queried for EVERY memory (short-term memories receive events too). When the CloudWatch signal is unreadable, event count is `None` (not 0), so AC-MEM-4 is skipped rather than firing a false "never populated" finding.
## Step 5: Resource Utilization & Operational Hygiene (Operational Excellence)
Enumerate all provisionable resource types and collect a 30-day activity signal:
- Inventory: `ListAgentRuntimes`, `ListMemories`, `ListGateways`, `ListBrowsers`, `ListCodeInterpreters`, `ListWorkloadIdentities`
- Activity: `cloudwatch:GetMetricData` (`Invocations`, `AWS/Bedrock-AgentCore`) keyed by per-type dimension (`AgentRuntimeId`, `MemoryId`, `GatewayId`)
| Check | Rule | Severity |
|-------|------|----------|
| AC-UTIL-1 | Idle resource: zero activity over 30-day window, > 7 days old | **Medium** |
| AC-UTIL-2 | Consolidation: duplicate configs in a region, OR regions holding resources with < 5% of total activity (3+ regions) | **Informational→Medium** |
| AC-UTIL-3 | Overall utilization < 60% (active / assessable, excluding recently-created) | **Informational** |
For the AC-UTIL-1 idle signal, prefer the real-time `ActiveSessionCount` gauge (a currently-running-sessions gauge, filterable by the `Service` dimension) where available; fall back to the cumulative `SessionCount` / `Invocations` counters over the 30-day window when `ActiveSessionCount` is not present.
**Framing:** AgentCore runtime billing is consumption-based — idle time is free. Frame findings as operational hygiene and security surface (unmanaged IAM roles, stale config), NOT wasted spend. Exception: memories holding stored long-term records DO accrue storage cost — call this out in the finding.
**Classification safety:** A resource is only classified **Idle** when its activity signal is complete for the full window. Types with no queryable per-resource metric (Browser, CodeInterpreter, WorkloadIdentity), and every resource when the CloudWatch call fails, are classified **Active (partial)** — never Idle. Resources younger than 7 days are **RecentlyCreated** and excluded from both idle flagging and the utilization ratio.
## Step 6: Runtime Observability (cross-pillar signals)
For each runtime, collect CloudWatch metrics from namespace `AWS/Bedrock-AgentCore`:
| Metric | Dimensions | Period | Statistic |
|--------|-----------|--------|-----------|
| CPUUsed-vCPUHours | Resource (ARN), Service=`AgentCore.Runtime`, Name | 3600s | Sum |
| MemoryUsed-GBHours | Resource (ARN), Service=`AgentCore.Runtime`, Name | 3600s | Sum |
| SessionCount | Resource (ARN), Operation=`InvokeAgentRuntime`, Name | 300s | Sum |
| Invocations | Resource (ARN), Operation=`InvokeAgentRuntime`, Name | 300s | Sum |
| Throttles | Resource (ARN), Operation=`InvokeAgentRuntime`, Name | 300s | Sum |From aws/tools-for-devops-agent, Apache-2.0.
More from aws/tools-for-devops-agent
- 0.784score
cloudtrail-cost-optimization
holmallaOfficial
Identify and quantify AWS CloudTrail cost optimization opportunities.
SkillAFreshness: A★ 116Claude Code +9 - 0.784score
config-cost-optimization
holmallaOfficial
Identify and quantify AWS Config cost optimization opportunities.
SkillAFreshness: A★ 116Claude Code +9 - 0.784score
agentcore-observability-setup
vggargavOfficial
Validates and bootstraps Amazon Bedrock AgentCore observability so customers can trace agent reasoning, detect silent failures, and measure performance before…
SkillAFreshness: A★ 116Claude Code +9 - 0.784score
aiml-access-diagnostics
tamrishOfficial
Use this skill when diagnosing IAM and access failures for Bedrock and SageMaker.
SkillAFreshness: A★ 116Claude Code +9 - 0.784score
analytics-opensearch-expertise
genealpeOfficial
Amazon OpenSearch Service domain health assessment.
SkillAFreshness: A★ 116Claude Code +9 - 0.784score
aws-backup-coverage-review
vediyappan-kkOfficial
AWS Backup coverage and data protection posture review.
SkillAFreshness: A★ 116Claude Code +9 - 0.784score
aws-eks-operations-review
shyamkulkarniOfficial
Use this skill when someone wants an Amazon EKS cluster graded against best practices.
SkillAFreshness: A★ 116Claude Code +9 - 0.784score
aws-health-events
udid-awsOfficial
ALWAYS use this skill in the beginning of any incident investigation, root cause analysis, or operational troubleshooting.
SkillAFreshness: A★ 116Claude Code +9 - 0.784score
aws-routing
midakinOfficial
Analyze and troubleshoot AWS routing and BGP path selection - how AWS chooses a network path, why traffic takes an unexpected route, and how to steer it.
SkillAFreshness: A★ 116Claude Code +9 - 0.784score
aiml-gpu-training-cluster-investigation
nzureshOfficial
Use this skill for GPU training or inference clusters on SageMaker HyperPod (Slurm or EKS), ParallelCluster, or self-managed EC2/EKS GPU instances.
SkillAFreshness: A★ 116Claude Code +9 - 0.784score
bedrock-operation-review
smnixonOfficial
Comprehensive Amazon Bedrock review aligned with the AWS Well-Architected Framework and Bedrock best practices.
SkillAFreshness: A★ 116Claude Code +9 - 0.784score
database-migration-service-expertise
tabhimanOfficial
AWS Database Migration Service (DMS) operational review and troubleshooting skill.
SkillAFreshness: A★ 116Claude Code +9
Compare and alternatives
Featured in
Signals
- Stars
- 116
- Forks
- 85
- Open issues
- 8
- Last commit (this folder)
- Oct 22, 2026 (5 days ago)
- Last release
- Sep 25, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.0.3
- License
- Apache-2.0
- Repository
- github.com/aws/tools-for-devops-agent
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Cite this page
agentcore-ops-review skill. Agent Mart. https://agentmart.dev/skills/aws-agentcore-ops-review (last updated 2026-10-24)