[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-aws-timestream-influxdb":3,"mdc-jpuck4-key":32,"related-org-aws-timestream-influxdb":1816,"related-repo-aws-timestream-influxdb":1987},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":21,"repoUrl":22,"updatedAt":23,"license":24,"forks":25,"topics":26,"repo":27,"sourceUrl":30,"mdContent":31},"timestream-influxdb","manage Amazon Timestream for InfluxDB","Retrieves authoritative guidance on Amazon Timestream for InfluxDB (managed InfluxDB 2, InfluxDB 2 Read Replica Clusters, InfluxDB 3 Core and Enterprise). Applicable to any InfluxDB-on-AWS request including engine selection, provisioning (Marketplace + AmazonTimestreamInfluxDBFullAccess\u002FConsoleFullAccess IAM), schema design (tags vs fields, cardinality, HTTP\u002Fsensor\u002Fmetric data modeling), migration from LiveAnalytics, Processing Engine plugins, connectivity (port 8086 V2, port 8181 V3, VPC-only by default), and write\u002Fquery errors.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"aws","AWS (Amazon)","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Faws.png",[12,16,19],{"name":13,"slug":14,"type":15},"Monitoring","monitoring","tag",{"name":17,"slug":18,"type":15},"Database","database",{"name":20,"slug":8,"type":15},"AWS",1822,"https:\u002F\u002Fgithub.com\u002Faws\u002Fagent-toolkit-for-aws","2026-07-16T06:00:38.542405",null,157,[],{"repoUrl":22,"stars":21,"forks":25,"topics":28,"description":29},[],"Official, AWS-supported MCP servers, skills, and plugins to help AI agents build on AWS","https:\u002F\u002Fgithub.com\u002Faws\u002Fagent-toolkit-for-aws\u002Ftree\u002FHEAD\u002Fskills\u002Fspecialized-skills\u002Fdatabase-skills\u002Ftimestream-influxdb","---\nname: timestream-influxdb\nversion: 1\ndescription: Retrieves authoritative guidance on Amazon Timestream for InfluxDB (managed InfluxDB 2, InfluxDB 2 Read Replica Clusters, InfluxDB 3 Core and Enterprise). Applicable to any InfluxDB-on-AWS request including engine selection, provisioning (Marketplace + AmazonTimestreamInfluxDBFullAccess\u002FConsoleFullAccess IAM), schema design (tags vs fields, cardinality, HTTP\u002Fsensor\u002Fmetric data modeling), migration from LiveAnalytics, Processing Engine plugins, connectivity (port 8086 V2, port 8181 V3, VPC-only by default), and write\u002Fquery errors.\n---\n\n# Amazon Timestream for InfluxDB\n\n## Overview\n\nAmazon Timestream for InfluxDB is a managed time-series database with three engine variants:\n\n| Engine | Port | Query | Use case |\n|---|---|---|---|\n| **InfluxDB 2** (single-node) | **8086** | Flux | Existing V2 workloads |\n| **InfluxDB 2 Read Replica Cluster** | **8086** | Flux | Read-heavy V2 workloads |\n| **InfluxDB 3** (Core & Enterprise) | **8181** | SQL \u002F InfluxQL | New workloads, high cardinality, Processing Engine |\n\n**Recommend InfluxDB 3 for new workloads.** V2 remains supported for existing deployments.\n\nAdvisory in nature: it recommends actions and provides the `aws` CLI\u002FAPI commands to carry them out (including mutations such as instance\u002Fcluster creation, tagging, and maintenance-window updates). It does not act autonomously — it executes mutations only in response to an explicit user request, never on its own initiative. Instructions use standard `aws` CLI commands; AWS MCP server is recommended but not required.\n\n## Common Tasks\n\n### 1. Verify Dependencies\n\nBefore any guidance, confirm tooling and engine.\n\n**Constraints:**\n\n- You MUST confirm which engine the user runs (V2, V2 Read Replica, or V3) before giving engine-specific advice — APIs and defaults differ.\n- You MUST NOT mix V2 APIs (Flux, orgs, buckets, port 8086) with V3 APIs (SQL\u002FInfluxQL, databases, tables, port 8181).\n- You MUST verify `aws` CLI (or `call_aws`) is available before provisioning guidance.\n- You MUST ask for all required parameters upfront: engine variant, region, VPC\u002Fsubnet IDs, name, instance type.\n\n**Tool call examples:**\n\n```\naws timestream-influxdb list-db-instances --region us-east-1\naws timestream-influxdb list-db-clusters --region us-east-1\n```\n\n### Resource tagging (always apply on resource creation)\n\nWhen creating any cluster or instance (`create-db-cluster`, `create-db-instance`), ALWAYS include these tags:\n\n`--tags Key=created_by,Value=timestream-skill Key=generation_model,Value={your-model-id}`\n\nExample: `--tags Key=created_by,Value=timestream-skill Key=generation_model,Value=claude-sonnet-4-20250514`\n\nInclude these tags even if the user does not mention tagging, so that they can identify the resources created via this skill. If the user provides additional tags, append these to their tags rather than replacing them.\n\n### 2. Select the right engine\n\nDecision flow:\n\n1. **New workload** → InfluxDB 3 Core (Enterprise for HA multi-node).\n2. **Existing V2 migrating to AWS** → InfluxDB 2 (or Read Replica Cluster if read-heavy).\n3. **High cardinality (>10M series) or SQL** → InfluxDB 3.\n4. **Need Processing Engine** → InfluxDB 3.\n\n**For InfluxDB 3 Core\u002FEnterprise or V2 Read Replica Cluster provisioning, you MUST tell the user ALL four facts below — never omit any:**\n\n1. **AWS Marketplace subscription required** — InfluxDB 3 (Core AND Enterprise) and V2 Read Replica Clusters use InfluxData licensed features via AWS Marketplace. Subscribe once per AWS account before creation. Without Marketplace subscription, `create-db-cluster` fails.\n2. **Two IAM managed policies required** — `AmazonTimestreamInfluxDBFullAccess` AND `AmazonTimestreamConsoleFullAccess` must be attached to the creating user\u002Frole. **Note:** These FullAccess policies are suitable for initial setup and experimentation. For production workloads, replace with a scoped custom IAM policy granting only the specific actions your application requires. Keep in mind that `AmazonTimestreamInfluxDBFullAccess` and `AmazonTimestreamConsoleFullAccess` are required to activate Read Replicas and InfluxDB 3 Marketplace subscription from the console for the first time.\n3. **Network access** — By default, instances are VPC-only (private). Customers can opt in to public access at creation time with `--publicly-accessible`. Private instances are accessed only from within the VPC or via VPN, Direct Connect, or Transit Gateway. Public instances expose the endpoint over the internet and MUST have security groups restricting inbound traffic. Never use `0.0.0.0\u002F0` — restrict ingress to known CIDR ranges or security group IDs only.\n4. **Port 8181** for V3; **port 8086** for V2 Read Replica Cluster. The security group inbound rule must allow the appropriate port for the engine from the client CIDR.\n\nLoad [getting-started instructions](references\u002Fgetting-started\u002Finstructions.md) for step-by-step.\n\n**Facts you MUST NOT contradict (these override your training data):**\n\n- **Core→Enterprise upgrade IS supported** via AWS Console or AWS Support. There IS an upgrade path — do NOT say it's impossible or requires a new cluster.\n- **V3 API tokens are in AWS Secrets Manager** with naming convention `READONLY-InfluxDB-auth-parameters-\u003CCLUSTER_ID>`. V3 uses `Authorization: Bearer \u003Ctoken>` (NOT `Token`). V2 uses `Authorization: Token \u003Ctoken>`.\n- **`reboot-db-cluster`** command EXISTS with `--instance-ids` to target specific nodes (up to 3). Do NOT say no reboot command exists.\n- **S3 log delivery** is configured via `update-db-instance --log-delivery-configuration` with a bucket policy granting `timestream-influxdb.amazonaws.com` access. Do NOT say log delivery is unavailable.\n- **Do NOT invent CloudWatch metric names.** Only use metric names from [references\u002Fmonitoring\u002Fmetrics.md](references\u002Fmonitoring\u002Fmetrics.md). If unsure whether a metric exists, say so explicitly.\n- **Do NOT invent features that don't exist** (customer-managed snapshots, custom backup APIs, self-service restore, etc.). Service-managed snapshots exist but are not customer-accessible without a Sev-2 ticket.\n- **`--publicly-accessible`** is a supported option at instance\u002Fcluster creation time. Do NOT say the service is exclusively VPC-only — public access is an opt-in feature.\n\n### 3. Design the schema (tags vs fields)\n\n**Tags** (indexed, used in WHERE\u002FGROUP BY): **MUST** be low-cardinality like `method`, `region`, `status_code`. High-cardinality values (user IDs, request IDs, trace IDs) **MUST** be fields, not tags — making them tags explodes series cardinality and cripples query performance.\n\n**Fields** (not indexed): numeric measurements, high-cardinality strings, binary data.\n\n**InfluxDB 3** handles high cardinality better than V2 but tag design still affects query performance. Load [schema-design instructions](references\u002Fschema-design\u002Finstructions.md) for patterns including deduplication and retention.\n\n### 4. Migrate from LiveAnalytics\n\nLiveAnalytics is in maintenance mode. For migration to InfluxDB 3:\n\n- **\u003C1B records \u002F \u003C125GB**: Use the **certified LiveAnalytics Migration plugin** with the migration client. Exports to S3 (Parquet), re-ingests into V3.\n- **>1B records**: Contact the AWS account team — no self-service path exists for larger migrations.\n\nLoad [migration instructions](references\u002Fmigration\u002Finstructions.md) for the procedure.\n\n### 5. Use Processing Engine plugins (V3 only)\n\nInfluxDB 3 Processing Engine runs **InfluxData certified plugins only** (custom user-written plugins are not supported). **ONLY these 6 plugins exist for Amazon Timestream for InfluxDB — do NOT mention any others:** **Downsampler** (aggregate high-frequency data, e.g. 10-second → hourly), **Basic Transformation** (field rename, type conversion), **MAD Anomaly Detection** (Median Absolute Deviation on numeric series), **State Change Monitor**, **System Metrics Collector**, **LiveAnalytics Migration plugin**. Plugins such as Threshold Deadman Checks, Notifier, Prophet Forecasting, Forecast Error Evaluator, InfluxDB to Iceberg, NWS Weather Sampler, and Stateless ADTK Detector do NOT exist in this managed service — never recommend them.\n\nTriggers: scheduled, on WAL flush, or on-request. Load [processing-engine instructions](references\u002Fprocessing-engine\u002Finstructions.md) for configuration.\n\n### 6. Monitor and operate\n\nCloudWatch metric coverage varies by engine and deployment type. Load [references\u002Fmonitoring\u002Fmetrics.md](references\u002Fmonitoring\u002Fmetrics.md) for the authoritative metric name tables. Key points:\n\n- **V2 SAZ\u002FMAZ**: Rich CloudWatch coverage including `CPUUtilization`, `VolumeBytesUsed`, `QueryRequestsTotal`, `SeriesCardinality`\n- **V2 Read Replica**: LIMITED CloudWatch — only `CPUUtilization`, `MemoryUtilization`, `DiskUtilization`, `ReplicaLag`\n- **V3 (all)**: LIMITED CloudWatch — only `CPUUtilization`, `MemoryUtilization`. All other V3 metrics require scraping the Prometheus `\u002Fmetrics` endpoint.\n\nSet alarms on CPU >80%, storage >80% of allocated (V2), and IOPS saturation. Maintenance windows are customer-managed. Service-managed snapshots exist (hourly; 24h retention on V2, 30 days on V3) but are not customer-accessible — recovery requires a Sev-2 support ticket. Customer-managed snapshots are not available.\n\n### Setting a maintenance window\n\nAlways use **JSON format** for `--maintenance-schedule`. The CLI accepts both JSON and shorthand, but use JSON consistently:\n\n```\naws timestream-influxdb update-db-instance \\\n  --identifier \u003Cinstance-id> \\\n  --maintenance-schedule '{\"timezone\":\"UTC\",\"preferredMaintenanceWindow\":\"Sun:03:00-Sun:05:00\"}' \\\n  --region \u003Cregion>\n```\n\nRequired fields: `timezone` (IANA string, e.g. `UTC`), `preferredMaintenanceWindow` (format `Day:HH:MM-Day:HH:MM`, Day = Mon\u002FTue\u002FWed\u002FThu\u002FFri\u002FSat\u002FSun). **Minimum window duration is 2 hours** — a 1-hour window will be rejected.\n\n### Concurrent instance creation: NO LIMIT\n\nTimestream for InfluxDB has **no service-side limit** on concurrent `create-db-instance` or `create-db-cluster` calls in a single account. Multiple instances can be in `CREATING` state simultaneously. If asked to create an instance, **always attempt the API call** even when other instances exist. Only report a failure if the actual API call returns one. Do not invent constraints.\n\nLoad [monitoring instructions](references\u002Fmonitoring\u002Finstructions.md) for alarm templates and operational runbooks.\n\n## Troubleshooting\n\n### Cannot connect \u002F connection refused\n\n**V3 uses port 8181. V2 uses port 8086.** #1 cause of \"connection refused\" on V3 is a client configured for 8086.\n\n**You MUST tell the user ALL of:**\n\n1. Update client to port **8181** (8086 is V2).\n2. Update the **security group inbound rule** to allow 8181 from the client's CIDR.\n3. For **private deployments** (default): client must be in the same VPC or reach it via VPN, Direct Connect, or Transit Gateway. Public-internet clients cannot reach a private instance even with correct security groups. For **publicly accessible deployments**: verify the security group allows inbound from the client's public IP.\n\n### Write requests fail (400\u002F422)\n\nWrong API version (V2 API against V3 cluster or vice versa), malformed line protocol, cardinality explosion, missing required tags\u002Ffields, or V3 deduplication conflict (measurement + tagset + timestamp must be unique).\n\n### Deduplication \u002F Parquet error under high load (V3)\n\nKnown issue. **You MUST recommend:** (1) reduce write batch sizes, (2) add distinguishing tags so measurement + tagset + timestamp is unique. Also check S3 VPC endpoint connectivity for clusters in private subnets. Do NOT frame this as an unpreventable timing issue — it's caused by data collisions.\n\n### Query timeout \u002F 500 error (V3)\n\nHigh cardinality, missing partition template, or large cold-tier scans. Check CloudWatch `CPUUtilization` and scrape `\u002Fmetrics` for `influxdb_iox_query_log_execute_duration_seconds`.\n\n### Parquet error (V3)\n\nUsually VPC connectivity to S3 from the cluster. Check the S3 VPC endpoint and route table. See [s3-vpc-endpoint](references\u002Ftroubleshooting\u002Fs3-vpc-endpoint.md).\n\n### Disk full \u002F OOM\n\nScale storage or instance type; review V2 retention or V3 TTL.\n\n### Replication lag (V2 Read Replica)\n\nPrimary write throughput, network saturation, or replica sized below primary.\n\n**Never mix V2 and V3 remediation.** Confirm engine first. Full triage: [troubleshooting instructions](references\u002Ftroubleshooting\u002Finstructions.md).\n\n## Security Considerations\n\n### IAM & Access Control\n\n- Use **scoped custom IAM policies** in production. `FullAccess` managed policies are for initial setup only.\n- Follow least-privilege: grant only the actions your application actually calls.\n- Use **IAM roles** for EC2\u002FLambda\u002FECS — never embed long-lived credentials in code or S3.\n\n### InfluxDB API Tokens\n\n- Rotate the initial admin token\u002Fpassword immediately after setup.\n- Create **per-application scoped tokens** with the minimum required permissions (read vs. write, specific bucket\u002Fdatabase).\n- Store tokens in **AWS Secrets Manager** and configure automatic rotation. Timestream for InfluxDB integrates natively with Secrets Manager.\n- Never expose tokens in logs, environment variables, shell history, or public repositories.\n\n### Network Isolation\n\n- Deploy instances in a **private VPC** unless public access is explicitly required (`--publicly-accessible`).\n- Use **Security Groups** with the minimum required ingress rules (port 8086 or 8181 only, from known CIDR ranges or Security Group IDs).\n- For private instances, use SSM port forwarding, VPN, or Direct Connect for remote access.\n\n### Encryption\n\n- **Data at rest:** Encrypted by default for all InfluxDB engines (V2, V2 Read Replica Cluster, and V3) using AWS service-managed keys — no action is required to enable it.\n- Data in transit is encrypted via TLS by default (all endpoints are HTTPS).\n- For S3 log delivery buckets, enable SSE-KMS with a same-account KMS key.\n- **MUST** enable SSE-KMS on SNS topics used for alarm notifications, and on CloudWatch Logs receiving operational data. Optionally enable SSE-KMS on other dependent resources.\n\n### S3 Bucket Policy (Log Delivery)\n\n- Add `aws:SourceArn` and `aws:SourceAccount` conditions to prevent confused deputy attacks.\n- The log delivery bucket policy applies to your logs bucket only — the V3 data bucket is managed by the service.\n\n### Auditing\n\n- Enable **AWS CloudTrail** to log all Timestream for InfluxDB control-plane API calls.\n- **Limitation:** Data-plane operations are not covered by CloudTrail. Use InfluxDB's `\u002Fmetrics` endpoint or native audit logging for data access observability.\n\n## Additional Resources\n\n- [Timestream for InfluxDB Developer Guide](https:\u002F\u002Fdocs.aws.amazon.com\u002Ftimestream\u002Flatest\u002Fdeveloperguide\u002F)\n- [Security in Timestream for InfluxDB](https:\u002F\u002Fdocs.aws.amazon.com\u002Ftimestream\u002Flatest\u002Fdeveloperguide\u002Fsecurity-timestream-for-influxdb.html)\n- [Security best practices for Timestream for InfluxDB](https:\u002F\u002Fdocs.aws.amazon.com\u002Ftimestream\u002Flatest\u002Fdeveloperguide\u002Fsecurity-best-practices.html)\n- [Timestream for InfluxDB Pricing](https:\u002F\u002Faws.amazon.com\u002Ftimestream\u002Fpricing\u002F)\n- [InfluxDB 3 Documentation](https:\u002F\u002Fdocs.influxdata.com\u002Finfluxdb3\u002F)\n- [Schema Design Best Practices](https:\u002F\u002Fdocs.aws.amazon.com\u002Ftimestream\u002Flatest\u002Fdeveloperguide\u002Fschema-design-best-practices.html)\n- [Processing Engine Documentation](https:\u002F\u002Fdocs.influxdata.com\u002Finfluxdb3\u002Fcloud-dedicated\u002Fprocess-data\u002Fprocess-engine\u002F)\n\n## Handoff from aws-database-selection\n\nThis skill can be invoked directly, or it can be entered from the `aws-database-selection` parent skill after that skill has run a requirements interview and produced a `requirements.json` artifact. When you see a backtick-wrapped path matching `aws_dbs_requirements\u002F*\u002Frequirements.json` in recent conversation, follow the entry protocol in `aws-database-selection\u002Freferences\u002Fhandoff-contract.md`:\n\n1. Read the artifact using `file_read`.\n2. Validate it against `aws-database-selection\u002Freferences\u002Fworkload-primary-artifact.schema.json`. If malformed or unreadable, tell the user and proceed without it.\n3. Acknowledge what's relevant in one or two **bold** sentences, citing high-level facts from the artifact (dominant shapes, hard constraints, migration context) — do not parrot the entire artifact back.\n4. Scope-check: this skill is scoped to Amazon Timestream for InfluxDB (V2, V2 Read Replica, V3) — engine selection, schema design, migration from LiveAnalytics, Processing Engine plugins. If the artifact's `workload_primaries.dominant_shapes` or `migration_context` don't match that scope, emit weak backpressure per the handoff contract: suggest `dynamodb-skill` for non-InfluxDB time-series on DynamoDB, or go back to `aws-database-selection` if the dominant shape isn't time-series, then ask the user whether to go back or proceed anyway. Do not silently misuse the artifact.\n5. Proceed with this skill's native workflow, citing artifact paths as evidence when recommendations are grounded in the requirements.\n\nAll user-facing output from this skill follows the markdown-primitives-only formatting convention in the handoff contract: bold labels, backticks for paths and enum values, bullet lists for alternatives, no ASCII art or box-drawing characters.\n",{"data":33,"body":35},{"name":4,"version":34,"description":6},1,{"type":36,"children":37},"root",[38,47,54,60,188,198,218,224,231,236,244,284,292,304,310,331,340,351,356,362,367,410,418,528,542,550,693,699,744,754,771,777,782,812,824,830,889,902,908,919,1025,1030,1036,1056,1065,1109,1115,1156,1168,1174,1180,1190,1198,1243,1249,1254,1260,1272,1278,1303,1309,1321,1327,1332,1338,1343,1360,1366,1372,1411,1417,1454,1460,1498,1504,1536,1542,1570,1576,1608,1614,1688,1694,1731,1811],{"type":39,"tag":40,"props":41,"children":43},"element","h1",{"id":42},"amazon-timestream-for-influxdb",[44],{"type":45,"value":46},"text","Amazon Timestream for InfluxDB",{"type":39,"tag":48,"props":49,"children":51},"h2",{"id":50},"overview",[52],{"type":45,"value":53},"Overview",{"type":39,"tag":55,"props":56,"children":57},"p",{},[58],{"type":45,"value":59},"Amazon Timestream for InfluxDB is a managed time-series database with three engine variants:",{"type":39,"tag":61,"props":62,"children":63},"table",{},[64,93],{"type":39,"tag":65,"props":66,"children":67},"thead",{},[68],{"type":39,"tag":69,"props":70,"children":71},"tr",{},[72,78,83,88],{"type":39,"tag":73,"props":74,"children":75},"th",{},[76],{"type":45,"value":77},"Engine",{"type":39,"tag":73,"props":79,"children":80},{},[81],{"type":45,"value":82},"Port",{"type":39,"tag":73,"props":84,"children":85},{},[86],{"type":45,"value":87},"Query",{"type":39,"tag":73,"props":89,"children":90},{},[91],{"type":45,"value":92},"Use case",{"type":39,"tag":94,"props":95,"children":96},"tbody",{},[97,130,157],{"type":39,"tag":69,"props":98,"children":99},{},[100,112,120,125],{"type":39,"tag":101,"props":102,"children":103},"td",{},[104,110],{"type":39,"tag":105,"props":106,"children":107},"strong",{},[108],{"type":45,"value":109},"InfluxDB 2",{"type":45,"value":111}," (single-node)",{"type":39,"tag":101,"props":113,"children":114},{},[115],{"type":39,"tag":105,"props":116,"children":117},{},[118],{"type":45,"value":119},"8086",{"type":39,"tag":101,"props":121,"children":122},{},[123],{"type":45,"value":124},"Flux",{"type":39,"tag":101,"props":126,"children":127},{},[128],{"type":45,"value":129},"Existing V2 workloads",{"type":39,"tag":69,"props":131,"children":132},{},[133,141,148,152],{"type":39,"tag":101,"props":134,"children":135},{},[136],{"type":39,"tag":105,"props":137,"children":138},{},[139],{"type":45,"value":140},"InfluxDB 2 Read Replica Cluster",{"type":39,"tag":101,"props":142,"children":143},{},[144],{"type":39,"tag":105,"props":145,"children":146},{},[147],{"type":45,"value":119},{"type":39,"tag":101,"props":149,"children":150},{},[151],{"type":45,"value":124},{"type":39,"tag":101,"props":153,"children":154},{},[155],{"type":45,"value":156},"Read-heavy V2 workloads",{"type":39,"tag":69,"props":158,"children":159},{},[160,170,178,183],{"type":39,"tag":101,"props":161,"children":162},{},[163,168],{"type":39,"tag":105,"props":164,"children":165},{},[166],{"type":45,"value":167},"InfluxDB 3",{"type":45,"value":169}," (Core & Enterprise)",{"type":39,"tag":101,"props":171,"children":172},{},[173],{"type":39,"tag":105,"props":174,"children":175},{},[176],{"type":45,"value":177},"8181",{"type":39,"tag":101,"props":179,"children":180},{},[181],{"type":45,"value":182},"SQL \u002F InfluxQL",{"type":39,"tag":101,"props":184,"children":185},{},[186],{"type":45,"value":187},"New workloads, high cardinality, Processing Engine",{"type":39,"tag":55,"props":189,"children":190},{},[191,196],{"type":39,"tag":105,"props":192,"children":193},{},[194],{"type":45,"value":195},"Recommend InfluxDB 3 for new workloads.",{"type":45,"value":197}," V2 remains supported for existing deployments.",{"type":39,"tag":55,"props":199,"children":200},{},[201,203,209,211,216],{"type":45,"value":202},"Advisory in nature: it recommends actions and provides the ",{"type":39,"tag":204,"props":205,"children":207},"code",{"className":206},[],[208],{"type":45,"value":8},{"type":45,"value":210}," CLI\u002FAPI commands to carry them out (including mutations such as instance\u002Fcluster creation, tagging, and maintenance-window updates). It does not act autonomously — it executes mutations only in response to an explicit user request, never on its own initiative. Instructions use standard ",{"type":39,"tag":204,"props":212,"children":214},{"className":213},[],[215],{"type":45,"value":8},{"type":45,"value":217}," CLI commands; AWS MCP server is recommended but not required.",{"type":39,"tag":48,"props":219,"children":221},{"id":220},"common-tasks",[222],{"type":45,"value":223},"Common Tasks",{"type":39,"tag":225,"props":226,"children":228},"h3",{"id":227},"_1-verify-dependencies",[229],{"type":45,"value":230},"1. Verify Dependencies",{"type":39,"tag":55,"props":232,"children":233},{},[234],{"type":45,"value":235},"Before any guidance, confirm tooling and engine.",{"type":39,"tag":55,"props":237,"children":238},{},[239],{"type":39,"tag":105,"props":240,"children":241},{},[242],{"type":45,"value":243},"Constraints:",{"type":39,"tag":245,"props":246,"children":247},"ul",{},[248,254,259,279],{"type":39,"tag":249,"props":250,"children":251},"li",{},[252],{"type":45,"value":253},"You MUST confirm which engine the user runs (V2, V2 Read Replica, or V3) before giving engine-specific advice — APIs and defaults differ.",{"type":39,"tag":249,"props":255,"children":256},{},[257],{"type":45,"value":258},"You MUST NOT mix V2 APIs (Flux, orgs, buckets, port 8086) with V3 APIs (SQL\u002FInfluxQL, databases, tables, port 8181).",{"type":39,"tag":249,"props":260,"children":261},{},[262,264,269,271,277],{"type":45,"value":263},"You MUST verify ",{"type":39,"tag":204,"props":265,"children":267},{"className":266},[],[268],{"type":45,"value":8},{"type":45,"value":270}," CLI (or ",{"type":39,"tag":204,"props":272,"children":274},{"className":273},[],[275],{"type":45,"value":276},"call_aws",{"type":45,"value":278},") is available before provisioning guidance.",{"type":39,"tag":249,"props":280,"children":281},{},[282],{"type":45,"value":283},"You MUST ask for all required parameters upfront: engine variant, region, VPC\u002Fsubnet IDs, name, instance type.",{"type":39,"tag":55,"props":285,"children":286},{},[287],{"type":39,"tag":105,"props":288,"children":289},{},[290],{"type":45,"value":291},"Tool call examples:",{"type":39,"tag":293,"props":294,"children":298},"pre",{"className":295,"code":297,"language":45},[296],"language-text","aws timestream-influxdb list-db-instances --region us-east-1\naws timestream-influxdb list-db-clusters --region us-east-1\n",[299],{"type":39,"tag":204,"props":300,"children":302},{"__ignoreMap":301},"",[303],{"type":45,"value":297},{"type":39,"tag":225,"props":305,"children":307},{"id":306},"resource-tagging-always-apply-on-resource-creation",[308],{"type":45,"value":309},"Resource tagging (always apply on resource creation)",{"type":39,"tag":55,"props":311,"children":312},{},[313,315,321,323,329],{"type":45,"value":314},"When creating any cluster or instance (",{"type":39,"tag":204,"props":316,"children":318},{"className":317},[],[319],{"type":45,"value":320},"create-db-cluster",{"type":45,"value":322},", ",{"type":39,"tag":204,"props":324,"children":326},{"className":325},[],[327],{"type":45,"value":328},"create-db-instance",{"type":45,"value":330},"), ALWAYS include these tags:",{"type":39,"tag":55,"props":332,"children":333},{},[334],{"type":39,"tag":204,"props":335,"children":337},{"className":336},[],[338],{"type":45,"value":339},"--tags Key=created_by,Value=timestream-skill Key=generation_model,Value={your-model-id}",{"type":39,"tag":55,"props":341,"children":342},{},[343,345],{"type":45,"value":344},"Example: ",{"type":39,"tag":204,"props":346,"children":348},{"className":347},[],[349],{"type":45,"value":350},"--tags Key=created_by,Value=timestream-skill Key=generation_model,Value=claude-sonnet-4-20250514",{"type":39,"tag":55,"props":352,"children":353},{},[354],{"type":45,"value":355},"Include these tags even if the user does not mention tagging, so that they can identify the resources created via this skill. If the user provides additional tags, append these to their tags rather than replacing them.",{"type":39,"tag":225,"props":357,"children":359},{"id":358},"_2-select-the-right-engine",[360],{"type":45,"value":361},"2. Select the right engine",{"type":39,"tag":55,"props":363,"children":364},{},[365],{"type":45,"value":366},"Decision flow:",{"type":39,"tag":368,"props":369,"children":370},"ol",{},[371,381,391,401],{"type":39,"tag":249,"props":372,"children":373},{},[374,379],{"type":39,"tag":105,"props":375,"children":376},{},[377],{"type":45,"value":378},"New workload",{"type":45,"value":380}," → InfluxDB 3 Core (Enterprise for HA multi-node).",{"type":39,"tag":249,"props":382,"children":383},{},[384,389],{"type":39,"tag":105,"props":385,"children":386},{},[387],{"type":45,"value":388},"Existing V2 migrating to AWS",{"type":45,"value":390}," → InfluxDB 2 (or Read Replica Cluster if read-heavy).",{"type":39,"tag":249,"props":392,"children":393},{},[394,399],{"type":39,"tag":105,"props":395,"children":396},{},[397],{"type":45,"value":398},"High cardinality (>10M series) or SQL",{"type":45,"value":400}," → InfluxDB 3.",{"type":39,"tag":249,"props":402,"children":403},{},[404,409],{"type":39,"tag":105,"props":405,"children":406},{},[407],{"type":45,"value":408},"Need Processing Engine",{"type":45,"value":400},{"type":39,"tag":55,"props":411,"children":412},{},[413],{"type":39,"tag":105,"props":414,"children":415},{},[416],{"type":45,"value":417},"For InfluxDB 3 Core\u002FEnterprise or V2 Read Replica Cluster provisioning, you MUST tell the user ALL four facts below — never omit any:",{"type":39,"tag":368,"props":419,"children":420},{},[421,438,485,511],{"type":39,"tag":249,"props":422,"children":423},{},[424,429,431,436],{"type":39,"tag":105,"props":425,"children":426},{},[427],{"type":45,"value":428},"AWS Marketplace subscription required",{"type":45,"value":430}," — InfluxDB 3 (Core AND Enterprise) and V2 Read Replica Clusters use InfluxData licensed features via AWS Marketplace. Subscribe once per AWS account before creation. Without Marketplace subscription, ",{"type":39,"tag":204,"props":432,"children":434},{"className":433},[],[435],{"type":45,"value":320},{"type":45,"value":437}," fails.",{"type":39,"tag":249,"props":439,"children":440},{},[441,446,448,454,456,462,464,469,471,476,478,483],{"type":39,"tag":105,"props":442,"children":443},{},[444],{"type":45,"value":445},"Two IAM managed policies required",{"type":45,"value":447}," — ",{"type":39,"tag":204,"props":449,"children":451},{"className":450},[],[452],{"type":45,"value":453},"AmazonTimestreamInfluxDBFullAccess",{"type":45,"value":455}," AND ",{"type":39,"tag":204,"props":457,"children":459},{"className":458},[],[460],{"type":45,"value":461},"AmazonTimestreamConsoleFullAccess",{"type":45,"value":463}," must be attached to the creating user\u002Frole. ",{"type":39,"tag":105,"props":465,"children":466},{},[467],{"type":45,"value":468},"Note:",{"type":45,"value":470}," These FullAccess policies are suitable for initial setup and experimentation. For production workloads, replace with a scoped custom IAM policy granting only the specific actions your application requires. Keep in mind that ",{"type":39,"tag":204,"props":472,"children":474},{"className":473},[],[475],{"type":45,"value":453},{"type":45,"value":477}," and ",{"type":39,"tag":204,"props":479,"children":481},{"className":480},[],[482],{"type":45,"value":461},{"type":45,"value":484}," are required to activate Read Replicas and InfluxDB 3 Marketplace subscription from the console for the first time.",{"type":39,"tag":249,"props":486,"children":487},{},[488,493,495,501,503,509],{"type":39,"tag":105,"props":489,"children":490},{},[491],{"type":45,"value":492},"Network access",{"type":45,"value":494}," — By default, instances are VPC-only (private). Customers can opt in to public access at creation time with ",{"type":39,"tag":204,"props":496,"children":498},{"className":497},[],[499],{"type":45,"value":500},"--publicly-accessible",{"type":45,"value":502},". Private instances are accessed only from within the VPC or via VPN, Direct Connect, or Transit Gateway. Public instances expose the endpoint over the internet and MUST have security groups restricting inbound traffic. Never use ",{"type":39,"tag":204,"props":504,"children":506},{"className":505},[],[507],{"type":45,"value":508},"0.0.0.0\u002F0",{"type":45,"value":510}," — restrict ingress to known CIDR ranges or security group IDs only.",{"type":39,"tag":249,"props":512,"children":513},{},[514,519,521,526],{"type":39,"tag":105,"props":515,"children":516},{},[517],{"type":45,"value":518},"Port 8181",{"type":45,"value":520}," for V3; ",{"type":39,"tag":105,"props":522,"children":523},{},[524],{"type":45,"value":525},"port 8086",{"type":45,"value":527}," for V2 Read Replica Cluster. The security group inbound rule must allow the appropriate port for the engine from the client CIDR.",{"type":39,"tag":55,"props":529,"children":530},{},[531,533,540],{"type":45,"value":532},"Load ",{"type":39,"tag":534,"props":535,"children":537},"a",{"href":536},"references\u002Fgetting-started\u002Finstructions.md",[538],{"type":45,"value":539},"getting-started instructions",{"type":45,"value":541}," for step-by-step.",{"type":39,"tag":55,"props":543,"children":544},{},[545],{"type":39,"tag":105,"props":546,"children":547},{},[548],{"type":45,"value":549},"Facts you MUST NOT contradict (these override your training data):",{"type":39,"tag":245,"props":551,"children":552},{},[553,563,605,627,653,670,680],{"type":39,"tag":249,"props":554,"children":555},{},[556,561],{"type":39,"tag":105,"props":557,"children":558},{},[559],{"type":45,"value":560},"Core→Enterprise upgrade IS supported",{"type":45,"value":562}," via AWS Console or AWS Support. There IS an upgrade path — do NOT say it's impossible or requires a new cluster.",{"type":39,"tag":249,"props":564,"children":565},{},[566,571,573,579,581,587,589,595,597,603],{"type":39,"tag":105,"props":567,"children":568},{},[569],{"type":45,"value":570},"V3 API tokens are in AWS Secrets Manager",{"type":45,"value":572}," with naming convention ",{"type":39,"tag":204,"props":574,"children":576},{"className":575},[],[577],{"type":45,"value":578},"READONLY-InfluxDB-auth-parameters-\u003CCLUSTER_ID>",{"type":45,"value":580},". V3 uses ",{"type":39,"tag":204,"props":582,"children":584},{"className":583},[],[585],{"type":45,"value":586},"Authorization: Bearer \u003Ctoken>",{"type":45,"value":588}," (NOT ",{"type":39,"tag":204,"props":590,"children":592},{"className":591},[],[593],{"type":45,"value":594},"Token",{"type":45,"value":596},"). V2 uses ",{"type":39,"tag":204,"props":598,"children":600},{"className":599},[],[601],{"type":45,"value":602},"Authorization: Token \u003Ctoken>",{"type":45,"value":604},".",{"type":39,"tag":249,"props":606,"children":607},{},[608,617,619,625],{"type":39,"tag":105,"props":609,"children":610},{},[611],{"type":39,"tag":204,"props":612,"children":614},{"className":613},[],[615],{"type":45,"value":616},"reboot-db-cluster",{"type":45,"value":618}," command EXISTS with ",{"type":39,"tag":204,"props":620,"children":622},{"className":621},[],[623],{"type":45,"value":624},"--instance-ids",{"type":45,"value":626}," to target specific nodes (up to 3). Do NOT say no reboot command exists.",{"type":39,"tag":249,"props":628,"children":629},{},[630,635,637,643,645,651],{"type":39,"tag":105,"props":631,"children":632},{},[633],{"type":45,"value":634},"S3 log delivery",{"type":45,"value":636}," is configured via ",{"type":39,"tag":204,"props":638,"children":640},{"className":639},[],[641],{"type":45,"value":642},"update-db-instance --log-delivery-configuration",{"type":45,"value":644}," with a bucket policy granting ",{"type":39,"tag":204,"props":646,"children":648},{"className":647},[],[649],{"type":45,"value":650},"timestream-influxdb.amazonaws.com",{"type":45,"value":652}," access. Do NOT say log delivery is unavailable.",{"type":39,"tag":249,"props":654,"children":655},{},[656,661,663,668],{"type":39,"tag":105,"props":657,"children":658},{},[659],{"type":45,"value":660},"Do NOT invent CloudWatch metric names.",{"type":45,"value":662}," Only use metric names from ",{"type":39,"tag":534,"props":664,"children":666},{"href":665},"references\u002Fmonitoring\u002Fmetrics.md",[667],{"type":45,"value":665},{"type":45,"value":669},". If unsure whether a metric exists, say so explicitly.",{"type":39,"tag":249,"props":671,"children":672},{},[673,678],{"type":39,"tag":105,"props":674,"children":675},{},[676],{"type":45,"value":677},"Do NOT invent features that don't exist",{"type":45,"value":679}," (customer-managed snapshots, custom backup APIs, self-service restore, etc.). Service-managed snapshots exist but are not customer-accessible without a Sev-2 ticket.",{"type":39,"tag":249,"props":681,"children":682},{},[683,691],{"type":39,"tag":105,"props":684,"children":685},{},[686],{"type":39,"tag":204,"props":687,"children":689},{"className":688},[],[690],{"type":45,"value":500},{"type":45,"value":692}," is a supported option at instance\u002Fcluster creation time. Do NOT say the service is exclusively VPC-only — public access is an opt-in feature.",{"type":39,"tag":225,"props":694,"children":696},{"id":695},"_3-design-the-schema-tags-vs-fields",[697],{"type":45,"value":698},"3. Design the schema (tags vs fields)",{"type":39,"tag":55,"props":700,"children":701},{},[702,707,709,714,716,722,723,729,730,736,738,742],{"type":39,"tag":105,"props":703,"children":704},{},[705],{"type":45,"value":706},"Tags",{"type":45,"value":708}," (indexed, used in WHERE\u002FGROUP BY): ",{"type":39,"tag":105,"props":710,"children":711},{},[712],{"type":45,"value":713},"MUST",{"type":45,"value":715}," be low-cardinality like ",{"type":39,"tag":204,"props":717,"children":719},{"className":718},[],[720],{"type":45,"value":721},"method",{"type":45,"value":322},{"type":39,"tag":204,"props":724,"children":726},{"className":725},[],[727],{"type":45,"value":728},"region",{"type":45,"value":322},{"type":39,"tag":204,"props":731,"children":733},{"className":732},[],[734],{"type":45,"value":735},"status_code",{"type":45,"value":737},". High-cardinality values (user IDs, request IDs, trace IDs) ",{"type":39,"tag":105,"props":739,"children":740},{},[741],{"type":45,"value":713},{"type":45,"value":743}," be fields, not tags — making them tags explodes series cardinality and cripples query performance.",{"type":39,"tag":55,"props":745,"children":746},{},[747,752],{"type":39,"tag":105,"props":748,"children":749},{},[750],{"type":45,"value":751},"Fields",{"type":45,"value":753}," (not indexed): numeric measurements, high-cardinality strings, binary data.",{"type":39,"tag":55,"props":755,"children":756},{},[757,761,763,769],{"type":39,"tag":105,"props":758,"children":759},{},[760],{"type":45,"value":167},{"type":45,"value":762}," handles high cardinality better than V2 but tag design still affects query performance. Load ",{"type":39,"tag":534,"props":764,"children":766},{"href":765},"references\u002Fschema-design\u002Finstructions.md",[767],{"type":45,"value":768},"schema-design instructions",{"type":45,"value":770}," for patterns including deduplication and retention.",{"type":39,"tag":225,"props":772,"children":774},{"id":773},"_4-migrate-from-liveanalytics",[775],{"type":45,"value":776},"4. Migrate from LiveAnalytics",{"type":39,"tag":55,"props":778,"children":779},{},[780],{"type":45,"value":781},"LiveAnalytics is in maintenance mode. For migration to InfluxDB 3:",{"type":39,"tag":245,"props":783,"children":784},{},[785,802],{"type":39,"tag":249,"props":786,"children":787},{},[788,793,795,800],{"type":39,"tag":105,"props":789,"children":790},{},[791],{"type":45,"value":792},"\u003C1B records \u002F \u003C125GB",{"type":45,"value":794},": Use the ",{"type":39,"tag":105,"props":796,"children":797},{},[798],{"type":45,"value":799},"certified LiveAnalytics Migration plugin",{"type":45,"value":801}," with the migration client. Exports to S3 (Parquet), re-ingests into V3.",{"type":39,"tag":249,"props":803,"children":804},{},[805,810],{"type":39,"tag":105,"props":806,"children":807},{},[808],{"type":45,"value":809},">1B records",{"type":45,"value":811},": Contact the AWS account team — no self-service path exists for larger migrations.",{"type":39,"tag":55,"props":813,"children":814},{},[815,816,822],{"type":45,"value":532},{"type":39,"tag":534,"props":817,"children":819},{"href":818},"references\u002Fmigration\u002Finstructions.md",[820],{"type":45,"value":821},"migration instructions",{"type":45,"value":823}," for the procedure.",{"type":39,"tag":225,"props":825,"children":827},{"id":826},"_5-use-processing-engine-plugins-v3-only",[828],{"type":45,"value":829},"5. Use Processing Engine plugins (V3 only)",{"type":39,"tag":55,"props":831,"children":832},{},[833,835,840,842,847,849,854,856,861,863,868,870,875,876,881,882,887],{"type":45,"value":834},"InfluxDB 3 Processing Engine runs ",{"type":39,"tag":105,"props":836,"children":837},{},[838],{"type":45,"value":839},"InfluxData certified plugins only",{"type":45,"value":841}," (custom user-written plugins are not supported). ",{"type":39,"tag":105,"props":843,"children":844},{},[845],{"type":45,"value":846},"ONLY these 6 plugins exist for Amazon Timestream for InfluxDB — do NOT mention any others:",{"type":45,"value":848}," ",{"type":39,"tag":105,"props":850,"children":851},{},[852],{"type":45,"value":853},"Downsampler",{"type":45,"value":855}," (aggregate high-frequency data, e.g. 10-second → hourly), ",{"type":39,"tag":105,"props":857,"children":858},{},[859],{"type":45,"value":860},"Basic Transformation",{"type":45,"value":862}," (field rename, type conversion), ",{"type":39,"tag":105,"props":864,"children":865},{},[866],{"type":45,"value":867},"MAD Anomaly Detection",{"type":45,"value":869}," (Median Absolute Deviation on numeric series), ",{"type":39,"tag":105,"props":871,"children":872},{},[873],{"type":45,"value":874},"State Change Monitor",{"type":45,"value":322},{"type":39,"tag":105,"props":877,"children":878},{},[879],{"type":45,"value":880},"System Metrics Collector",{"type":45,"value":322},{"type":39,"tag":105,"props":883,"children":884},{},[885],{"type":45,"value":886},"LiveAnalytics Migration plugin",{"type":45,"value":888},". Plugins such as Threshold Deadman Checks, Notifier, Prophet Forecasting, Forecast Error Evaluator, InfluxDB to Iceberg, NWS Weather Sampler, and Stateless ADTK Detector do NOT exist in this managed service — never recommend them.",{"type":39,"tag":55,"props":890,"children":891},{},[892,894,900],{"type":45,"value":893},"Triggers: scheduled, on WAL flush, or on-request. Load ",{"type":39,"tag":534,"props":895,"children":897},{"href":896},"references\u002Fprocessing-engine\u002Finstructions.md",[898],{"type":45,"value":899},"processing-engine instructions",{"type":45,"value":901}," for configuration.",{"type":39,"tag":225,"props":903,"children":905},{"id":904},"_6-monitor-and-operate",[906],{"type":45,"value":907},"6. Monitor and operate",{"type":39,"tag":55,"props":909,"children":910},{},[911,913,917],{"type":45,"value":912},"CloudWatch metric coverage varies by engine and deployment type. Load ",{"type":39,"tag":534,"props":914,"children":915},{"href":665},[916],{"type":45,"value":665},{"type":45,"value":918}," for the authoritative metric name tables. Key points:",{"type":39,"tag":245,"props":920,"children":921},{},[922,959,995],{"type":39,"tag":249,"props":923,"children":924},{},[925,930,932,938,939,945,946,952,953],{"type":39,"tag":105,"props":926,"children":927},{},[928],{"type":45,"value":929},"V2 SAZ\u002FMAZ",{"type":45,"value":931},": Rich CloudWatch coverage including ",{"type":39,"tag":204,"props":933,"children":935},{"className":934},[],[936],{"type":45,"value":937},"CPUUtilization",{"type":45,"value":322},{"type":39,"tag":204,"props":940,"children":942},{"className":941},[],[943],{"type":45,"value":944},"VolumeBytesUsed",{"type":45,"value":322},{"type":39,"tag":204,"props":947,"children":949},{"className":948},[],[950],{"type":45,"value":951},"QueryRequestsTotal",{"type":45,"value":322},{"type":39,"tag":204,"props":954,"children":956},{"className":955},[],[957],{"type":45,"value":958},"SeriesCardinality",{"type":39,"tag":249,"props":960,"children":961},{},[962,967,969,974,975,981,982,988,989],{"type":39,"tag":105,"props":963,"children":964},{},[965],{"type":45,"value":966},"V2 Read Replica",{"type":45,"value":968},": LIMITED CloudWatch — only ",{"type":39,"tag":204,"props":970,"children":972},{"className":971},[],[973],{"type":45,"value":937},{"type":45,"value":322},{"type":39,"tag":204,"props":976,"children":978},{"className":977},[],[979],{"type":45,"value":980},"MemoryUtilization",{"type":45,"value":322},{"type":39,"tag":204,"props":983,"children":985},{"className":984},[],[986],{"type":45,"value":987},"DiskUtilization",{"type":45,"value":322},{"type":39,"tag":204,"props":990,"children":992},{"className":991},[],[993],{"type":45,"value":994},"ReplicaLag",{"type":39,"tag":249,"props":996,"children":997},{},[998,1003,1004,1009,1010,1015,1017,1023],{"type":39,"tag":105,"props":999,"children":1000},{},[1001],{"type":45,"value":1002},"V3 (all)",{"type":45,"value":968},{"type":39,"tag":204,"props":1005,"children":1007},{"className":1006},[],[1008],{"type":45,"value":937},{"type":45,"value":322},{"type":39,"tag":204,"props":1011,"children":1013},{"className":1012},[],[1014],{"type":45,"value":980},{"type":45,"value":1016},". All other V3 metrics require scraping the Prometheus ",{"type":39,"tag":204,"props":1018,"children":1020},{"className":1019},[],[1021],{"type":45,"value":1022},"\u002Fmetrics",{"type":45,"value":1024}," endpoint.",{"type":39,"tag":55,"props":1026,"children":1027},{},[1028],{"type":45,"value":1029},"Set alarms on CPU >80%, storage >80% of allocated (V2), and IOPS saturation. Maintenance windows are customer-managed. Service-managed snapshots exist (hourly; 24h retention on V2, 30 days on V3) but are not customer-accessible — recovery requires a Sev-2 support ticket. Customer-managed snapshots are not available.",{"type":39,"tag":225,"props":1031,"children":1033},{"id":1032},"setting-a-maintenance-window",[1034],{"type":45,"value":1035},"Setting a maintenance window",{"type":39,"tag":55,"props":1037,"children":1038},{},[1039,1041,1046,1048,1054],{"type":45,"value":1040},"Always use ",{"type":39,"tag":105,"props":1042,"children":1043},{},[1044],{"type":45,"value":1045},"JSON format",{"type":45,"value":1047}," for ",{"type":39,"tag":204,"props":1049,"children":1051},{"className":1050},[],[1052],{"type":45,"value":1053},"--maintenance-schedule",{"type":45,"value":1055},". The CLI accepts both JSON and shorthand, but use JSON consistently:",{"type":39,"tag":293,"props":1057,"children":1060},{"className":1058,"code":1059,"language":45},[296],"aws timestream-influxdb update-db-instance \\\n  --identifier \u003Cinstance-id> \\\n  --maintenance-schedule '{\"timezone\":\"UTC\",\"preferredMaintenanceWindow\":\"Sun:03:00-Sun:05:00\"}' \\\n  --region \u003Cregion>\n",[1061],{"type":39,"tag":204,"props":1062,"children":1063},{"__ignoreMap":301},[1064],{"type":45,"value":1059},{"type":39,"tag":55,"props":1066,"children":1067},{},[1068,1070,1076,1078,1084,1086,1092,1094,1100,1102,1107],{"type":45,"value":1069},"Required fields: ",{"type":39,"tag":204,"props":1071,"children":1073},{"className":1072},[],[1074],{"type":45,"value":1075},"timezone",{"type":45,"value":1077}," (IANA string, e.g. ",{"type":39,"tag":204,"props":1079,"children":1081},{"className":1080},[],[1082],{"type":45,"value":1083},"UTC",{"type":45,"value":1085},"), ",{"type":39,"tag":204,"props":1087,"children":1089},{"className":1088},[],[1090],{"type":45,"value":1091},"preferredMaintenanceWindow",{"type":45,"value":1093}," (format ",{"type":39,"tag":204,"props":1095,"children":1097},{"className":1096},[],[1098],{"type":45,"value":1099},"Day:HH:MM-Day:HH:MM",{"type":45,"value":1101},", Day = Mon\u002FTue\u002FWed\u002FThu\u002FFri\u002FSat\u002FSun). ",{"type":39,"tag":105,"props":1103,"children":1104},{},[1105],{"type":45,"value":1106},"Minimum window duration is 2 hours",{"type":45,"value":1108}," — a 1-hour window will be rejected.",{"type":39,"tag":225,"props":1110,"children":1112},{"id":1111},"concurrent-instance-creation-no-limit",[1113],{"type":45,"value":1114},"Concurrent instance creation: NO LIMIT",{"type":39,"tag":55,"props":1116,"children":1117},{},[1118,1120,1125,1127,1132,1134,1139,1141,1147,1149,1154],{"type":45,"value":1119},"Timestream for InfluxDB has ",{"type":39,"tag":105,"props":1121,"children":1122},{},[1123],{"type":45,"value":1124},"no service-side limit",{"type":45,"value":1126}," on concurrent ",{"type":39,"tag":204,"props":1128,"children":1130},{"className":1129},[],[1131],{"type":45,"value":328},{"type":45,"value":1133}," or ",{"type":39,"tag":204,"props":1135,"children":1137},{"className":1136},[],[1138],{"type":45,"value":320},{"type":45,"value":1140}," calls in a single account. Multiple instances can be in ",{"type":39,"tag":204,"props":1142,"children":1144},{"className":1143},[],[1145],{"type":45,"value":1146},"CREATING",{"type":45,"value":1148}," state simultaneously. If asked to create an instance, ",{"type":39,"tag":105,"props":1150,"children":1151},{},[1152],{"type":45,"value":1153},"always attempt the API call",{"type":45,"value":1155}," even when other instances exist. Only report a failure if the actual API call returns one. Do not invent constraints.",{"type":39,"tag":55,"props":1157,"children":1158},{},[1159,1160,1166],{"type":45,"value":532},{"type":39,"tag":534,"props":1161,"children":1163},{"href":1162},"references\u002Fmonitoring\u002Finstructions.md",[1164],{"type":45,"value":1165},"monitoring instructions",{"type":45,"value":1167}," for alarm templates and operational runbooks.",{"type":39,"tag":48,"props":1169,"children":1171},{"id":1170},"troubleshooting",[1172],{"type":45,"value":1173},"Troubleshooting",{"type":39,"tag":225,"props":1175,"children":1177},{"id":1176},"cannot-connect-connection-refused",[1178],{"type":45,"value":1179},"Cannot connect \u002F connection refused",{"type":39,"tag":55,"props":1181,"children":1182},{},[1183,1188],{"type":39,"tag":105,"props":1184,"children":1185},{},[1186],{"type":45,"value":1187},"V3 uses port 8181. V2 uses port 8086.",{"type":45,"value":1189}," #1 cause of \"connection refused\" on V3 is a client configured for 8086.",{"type":39,"tag":55,"props":1191,"children":1192},{},[1193],{"type":39,"tag":105,"props":1194,"children":1195},{},[1196],{"type":45,"value":1197},"You MUST tell the user ALL of:",{"type":39,"tag":368,"props":1199,"children":1200},{},[1201,1212,1224],{"type":39,"tag":249,"props":1202,"children":1203},{},[1204,1206,1210],{"type":45,"value":1205},"Update client to port ",{"type":39,"tag":105,"props":1207,"children":1208},{},[1209],{"type":45,"value":177},{"type":45,"value":1211}," (8086 is V2).",{"type":39,"tag":249,"props":1213,"children":1214},{},[1215,1217,1222],{"type":45,"value":1216},"Update the ",{"type":39,"tag":105,"props":1218,"children":1219},{},[1220],{"type":45,"value":1221},"security group inbound rule",{"type":45,"value":1223}," to allow 8181 from the client's CIDR.",{"type":39,"tag":249,"props":1225,"children":1226},{},[1227,1229,1234,1236,1241],{"type":45,"value":1228},"For ",{"type":39,"tag":105,"props":1230,"children":1231},{},[1232],{"type":45,"value":1233},"private deployments",{"type":45,"value":1235}," (default): client must be in the same VPC or reach it via VPN, Direct Connect, or Transit Gateway. Public-internet clients cannot reach a private instance even with correct security groups. For ",{"type":39,"tag":105,"props":1237,"children":1238},{},[1239],{"type":45,"value":1240},"publicly accessible deployments",{"type":45,"value":1242},": verify the security group allows inbound from the client's public IP.",{"type":39,"tag":225,"props":1244,"children":1246},{"id":1245},"write-requests-fail-400422",[1247],{"type":45,"value":1248},"Write requests fail (400\u002F422)",{"type":39,"tag":55,"props":1250,"children":1251},{},[1252],{"type":45,"value":1253},"Wrong API version (V2 API against V3 cluster or vice versa), malformed line protocol, cardinality explosion, missing required tags\u002Ffields, or V3 deduplication conflict (measurement + tagset + timestamp must be unique).",{"type":39,"tag":225,"props":1255,"children":1257},{"id":1256},"deduplication-parquet-error-under-high-load-v3",[1258],{"type":45,"value":1259},"Deduplication \u002F Parquet error under high load (V3)",{"type":39,"tag":55,"props":1261,"children":1262},{},[1263,1265,1270],{"type":45,"value":1264},"Known issue. ",{"type":39,"tag":105,"props":1266,"children":1267},{},[1268],{"type":45,"value":1269},"You MUST recommend:",{"type":45,"value":1271}," (1) reduce write batch sizes, (2) add distinguishing tags so measurement + tagset + timestamp is unique. Also check S3 VPC endpoint connectivity for clusters in private subnets. Do NOT frame this as an unpreventable timing issue — it's caused by data collisions.",{"type":39,"tag":225,"props":1273,"children":1275},{"id":1274},"query-timeout-500-error-v3",[1276],{"type":45,"value":1277},"Query timeout \u002F 500 error (V3)",{"type":39,"tag":55,"props":1279,"children":1280},{},[1281,1283,1288,1290,1295,1296,1302],{"type":45,"value":1282},"High cardinality, missing partition template, or large cold-tier scans. Check CloudWatch ",{"type":39,"tag":204,"props":1284,"children":1286},{"className":1285},[],[1287],{"type":45,"value":937},{"type":45,"value":1289}," and scrape ",{"type":39,"tag":204,"props":1291,"children":1293},{"className":1292},[],[1294],{"type":45,"value":1022},{"type":45,"value":1047},{"type":39,"tag":204,"props":1297,"children":1299},{"className":1298},[],[1300],{"type":45,"value":1301},"influxdb_iox_query_log_execute_duration_seconds",{"type":45,"value":604},{"type":39,"tag":225,"props":1304,"children":1306},{"id":1305},"parquet-error-v3",[1307],{"type":45,"value":1308},"Parquet error (V3)",{"type":39,"tag":55,"props":1310,"children":1311},{},[1312,1314,1320],{"type":45,"value":1313},"Usually VPC connectivity to S3 from the cluster. Check the S3 VPC endpoint and route table. See ",{"type":39,"tag":534,"props":1315,"children":1317},{"href":1316},"references\u002Ftroubleshooting\u002Fs3-vpc-endpoint.md",[1318],{"type":45,"value":1319},"s3-vpc-endpoint",{"type":45,"value":604},{"type":39,"tag":225,"props":1322,"children":1324},{"id":1323},"disk-full-oom",[1325],{"type":45,"value":1326},"Disk full \u002F OOM",{"type":39,"tag":55,"props":1328,"children":1329},{},[1330],{"type":45,"value":1331},"Scale storage or instance type; review V2 retention or V3 TTL.",{"type":39,"tag":225,"props":1333,"children":1335},{"id":1334},"replication-lag-v2-read-replica",[1336],{"type":45,"value":1337},"Replication lag (V2 Read Replica)",{"type":39,"tag":55,"props":1339,"children":1340},{},[1341],{"type":45,"value":1342},"Primary write throughput, network saturation, or replica sized below primary.",{"type":39,"tag":55,"props":1344,"children":1345},{},[1346,1351,1353,1359],{"type":39,"tag":105,"props":1347,"children":1348},{},[1349],{"type":45,"value":1350},"Never mix V2 and V3 remediation.",{"type":45,"value":1352}," Confirm engine first. Full triage: ",{"type":39,"tag":534,"props":1354,"children":1356},{"href":1355},"references\u002Ftroubleshooting\u002Finstructions.md",[1357],{"type":45,"value":1358},"troubleshooting instructions",{"type":45,"value":604},{"type":39,"tag":48,"props":1361,"children":1363},{"id":1362},"security-considerations",[1364],{"type":45,"value":1365},"Security Considerations",{"type":39,"tag":225,"props":1367,"children":1369},{"id":1368},"iam-access-control",[1370],{"type":45,"value":1371},"IAM & Access Control",{"type":39,"tag":245,"props":1373,"children":1374},{},[1375,1395,1400],{"type":39,"tag":249,"props":1376,"children":1377},{},[1378,1380,1385,1387,1393],{"type":45,"value":1379},"Use ",{"type":39,"tag":105,"props":1381,"children":1382},{},[1383],{"type":45,"value":1384},"scoped custom IAM policies",{"type":45,"value":1386}," in production. ",{"type":39,"tag":204,"props":1388,"children":1390},{"className":1389},[],[1391],{"type":45,"value":1392},"FullAccess",{"type":45,"value":1394}," managed policies are for initial setup only.",{"type":39,"tag":249,"props":1396,"children":1397},{},[1398],{"type":45,"value":1399},"Follow least-privilege: grant only the actions your application actually calls.",{"type":39,"tag":249,"props":1401,"children":1402},{},[1403,1404,1409],{"type":45,"value":1379},{"type":39,"tag":105,"props":1405,"children":1406},{},[1407],{"type":45,"value":1408},"IAM roles",{"type":45,"value":1410}," for EC2\u002FLambda\u002FECS — never embed long-lived credentials in code or S3.",{"type":39,"tag":225,"props":1412,"children":1414},{"id":1413},"influxdb-api-tokens",[1415],{"type":45,"value":1416},"InfluxDB API Tokens",{"type":39,"tag":245,"props":1418,"children":1419},{},[1420,1425,1437,1449],{"type":39,"tag":249,"props":1421,"children":1422},{},[1423],{"type":45,"value":1424},"Rotate the initial admin token\u002Fpassword immediately after setup.",{"type":39,"tag":249,"props":1426,"children":1427},{},[1428,1430,1435],{"type":45,"value":1429},"Create ",{"type":39,"tag":105,"props":1431,"children":1432},{},[1433],{"type":45,"value":1434},"per-application scoped tokens",{"type":45,"value":1436}," with the minimum required permissions (read vs. write, specific bucket\u002Fdatabase).",{"type":39,"tag":249,"props":1438,"children":1439},{},[1440,1442,1447],{"type":45,"value":1441},"Store tokens in ",{"type":39,"tag":105,"props":1443,"children":1444},{},[1445],{"type":45,"value":1446},"AWS Secrets Manager",{"type":45,"value":1448}," and configure automatic rotation. Timestream for InfluxDB integrates natively with Secrets Manager.",{"type":39,"tag":249,"props":1450,"children":1451},{},[1452],{"type":45,"value":1453},"Never expose tokens in logs, environment variables, shell history, or public repositories.",{"type":39,"tag":225,"props":1455,"children":1457},{"id":1456},"network-isolation",[1458],{"type":45,"value":1459},"Network Isolation",{"type":39,"tag":245,"props":1461,"children":1462},{},[1463,1482,1493],{"type":39,"tag":249,"props":1464,"children":1465},{},[1466,1468,1473,1475,1480],{"type":45,"value":1467},"Deploy instances in a ",{"type":39,"tag":105,"props":1469,"children":1470},{},[1471],{"type":45,"value":1472},"private VPC",{"type":45,"value":1474}," unless public access is explicitly required (",{"type":39,"tag":204,"props":1476,"children":1478},{"className":1477},[],[1479],{"type":45,"value":500},{"type":45,"value":1481},").",{"type":39,"tag":249,"props":1483,"children":1484},{},[1485,1486,1491],{"type":45,"value":1379},{"type":39,"tag":105,"props":1487,"children":1488},{},[1489],{"type":45,"value":1490},"Security Groups",{"type":45,"value":1492}," with the minimum required ingress rules (port 8086 or 8181 only, from known CIDR ranges or Security Group IDs).",{"type":39,"tag":249,"props":1494,"children":1495},{},[1496],{"type":45,"value":1497},"For private instances, use SSM port forwarding, VPN, or Direct Connect for remote access.",{"type":39,"tag":225,"props":1499,"children":1501},{"id":1500},"encryption",[1502],{"type":45,"value":1503},"Encryption",{"type":39,"tag":245,"props":1505,"children":1506},{},[1507,1517,1522,1527],{"type":39,"tag":249,"props":1508,"children":1509},{},[1510,1515],{"type":39,"tag":105,"props":1511,"children":1512},{},[1513],{"type":45,"value":1514},"Data at rest:",{"type":45,"value":1516}," Encrypted by default for all InfluxDB engines (V2, V2 Read Replica Cluster, and V3) using AWS service-managed keys — no action is required to enable it.",{"type":39,"tag":249,"props":1518,"children":1519},{},[1520],{"type":45,"value":1521},"Data in transit is encrypted via TLS by default (all endpoints are HTTPS).",{"type":39,"tag":249,"props":1523,"children":1524},{},[1525],{"type":45,"value":1526},"For S3 log delivery buckets, enable SSE-KMS with a same-account KMS key.",{"type":39,"tag":249,"props":1528,"children":1529},{},[1530,1534],{"type":39,"tag":105,"props":1531,"children":1532},{},[1533],{"type":45,"value":713},{"type":45,"value":1535}," enable SSE-KMS on SNS topics used for alarm notifications, and on CloudWatch Logs receiving operational data. Optionally enable SSE-KMS on other dependent resources.",{"type":39,"tag":225,"props":1537,"children":1539},{"id":1538},"s3-bucket-policy-log-delivery",[1540],{"type":45,"value":1541},"S3 Bucket Policy (Log Delivery)",{"type":39,"tag":245,"props":1543,"children":1544},{},[1545,1565],{"type":39,"tag":249,"props":1546,"children":1547},{},[1548,1550,1556,1557,1563],{"type":45,"value":1549},"Add ",{"type":39,"tag":204,"props":1551,"children":1553},{"className":1552},[],[1554],{"type":45,"value":1555},"aws:SourceArn",{"type":45,"value":477},{"type":39,"tag":204,"props":1558,"children":1560},{"className":1559},[],[1561],{"type":45,"value":1562},"aws:SourceAccount",{"type":45,"value":1564}," conditions to prevent confused deputy attacks.",{"type":39,"tag":249,"props":1566,"children":1567},{},[1568],{"type":45,"value":1569},"The log delivery bucket policy applies to your logs bucket only — the V3 data bucket is managed by the service.",{"type":39,"tag":225,"props":1571,"children":1573},{"id":1572},"auditing",[1574],{"type":45,"value":1575},"Auditing",{"type":39,"tag":245,"props":1577,"children":1578},{},[1579,1591],{"type":39,"tag":249,"props":1580,"children":1581},{},[1582,1584,1589],{"type":45,"value":1583},"Enable ",{"type":39,"tag":105,"props":1585,"children":1586},{},[1587],{"type":45,"value":1588},"AWS CloudTrail",{"type":45,"value":1590}," to log all Timestream for InfluxDB control-plane API calls.",{"type":39,"tag":249,"props":1592,"children":1593},{},[1594,1599,1601,1606],{"type":39,"tag":105,"props":1595,"children":1596},{},[1597],{"type":45,"value":1598},"Limitation:",{"type":45,"value":1600}," Data-plane operations are not covered by CloudTrail. Use InfluxDB's ",{"type":39,"tag":204,"props":1602,"children":1604},{"className":1603},[],[1605],{"type":45,"value":1022},{"type":45,"value":1607}," endpoint or native audit logging for data access observability.",{"type":39,"tag":48,"props":1609,"children":1611},{"id":1610},"additional-resources",[1612],{"type":45,"value":1613},"Additional Resources",{"type":39,"tag":245,"props":1615,"children":1616},{},[1617,1628,1638,1648,1658,1668,1678],{"type":39,"tag":249,"props":1618,"children":1619},{},[1620],{"type":39,"tag":534,"props":1621,"children":1625},{"href":1622,"rel":1623},"https:\u002F\u002Fdocs.aws.amazon.com\u002Ftimestream\u002Flatest\u002Fdeveloperguide\u002F",[1624],"nofollow",[1626],{"type":45,"value":1627},"Timestream for InfluxDB Developer Guide",{"type":39,"tag":249,"props":1629,"children":1630},{},[1631],{"type":39,"tag":534,"props":1632,"children":1635},{"href":1633,"rel":1634},"https:\u002F\u002Fdocs.aws.amazon.com\u002Ftimestream\u002Flatest\u002Fdeveloperguide\u002Fsecurity-timestream-for-influxdb.html",[1624],[1636],{"type":45,"value":1637},"Security in Timestream for InfluxDB",{"type":39,"tag":249,"props":1639,"children":1640},{},[1641],{"type":39,"tag":534,"props":1642,"children":1645},{"href":1643,"rel":1644},"https:\u002F\u002Fdocs.aws.amazon.com\u002Ftimestream\u002Flatest\u002Fdeveloperguide\u002Fsecurity-best-practices.html",[1624],[1646],{"type":45,"value":1647},"Security best practices for Timestream for InfluxDB",{"type":39,"tag":249,"props":1649,"children":1650},{},[1651],{"type":39,"tag":534,"props":1652,"children":1655},{"href":1653,"rel":1654},"https:\u002F\u002Faws.amazon.com\u002Ftimestream\u002Fpricing\u002F",[1624],[1656],{"type":45,"value":1657},"Timestream for InfluxDB Pricing",{"type":39,"tag":249,"props":1659,"children":1660},{},[1661],{"type":39,"tag":534,"props":1662,"children":1665},{"href":1663,"rel":1664},"https:\u002F\u002Fdocs.influxdata.com\u002Finfluxdb3\u002F",[1624],[1666],{"type":45,"value":1667},"InfluxDB 3 Documentation",{"type":39,"tag":249,"props":1669,"children":1670},{},[1671],{"type":39,"tag":534,"props":1672,"children":1675},{"href":1673,"rel":1674},"https:\u002F\u002Fdocs.aws.amazon.com\u002Ftimestream\u002Flatest\u002Fdeveloperguide\u002Fschema-design-best-practices.html",[1624],[1676],{"type":45,"value":1677},"Schema Design Best Practices",{"type":39,"tag":249,"props":1679,"children":1680},{},[1681],{"type":39,"tag":534,"props":1682,"children":1685},{"href":1683,"rel":1684},"https:\u002F\u002Fdocs.influxdata.com\u002Finfluxdb3\u002Fcloud-dedicated\u002Fprocess-data\u002Fprocess-engine\u002F",[1624],[1686],{"type":45,"value":1687},"Processing Engine Documentation",{"type":39,"tag":48,"props":1689,"children":1691},{"id":1690},"handoff-from-aws-database-selection",[1692],{"type":45,"value":1693},"Handoff from aws-database-selection",{"type":39,"tag":55,"props":1695,"children":1696},{},[1697,1699,1705,1707,1713,1715,1721,1723,1729],{"type":45,"value":1698},"This skill can be invoked directly, or it can be entered from the ",{"type":39,"tag":204,"props":1700,"children":1702},{"className":1701},[],[1703],{"type":45,"value":1704},"aws-database-selection",{"type":45,"value":1706}," parent skill after that skill has run a requirements interview and produced a ",{"type":39,"tag":204,"props":1708,"children":1710},{"className":1709},[],[1711],{"type":45,"value":1712},"requirements.json",{"type":45,"value":1714}," artifact. When you see a backtick-wrapped path matching ",{"type":39,"tag":204,"props":1716,"children":1718},{"className":1717},[],[1719],{"type":45,"value":1720},"aws_dbs_requirements\u002F*\u002Frequirements.json",{"type":45,"value":1722}," in recent conversation, follow the entry protocol in ",{"type":39,"tag":204,"props":1724,"children":1726},{"className":1725},[],[1727],{"type":45,"value":1728},"aws-database-selection\u002Freferences\u002Fhandoff-contract.md",{"type":45,"value":1730},":",{"type":39,"tag":368,"props":1732,"children":1733},{},[1734,1746,1759,1771,1806],{"type":39,"tag":249,"props":1735,"children":1736},{},[1737,1739,1745],{"type":45,"value":1738},"Read the artifact using ",{"type":39,"tag":204,"props":1740,"children":1742},{"className":1741},[],[1743],{"type":45,"value":1744},"file_read",{"type":45,"value":604},{"type":39,"tag":249,"props":1747,"children":1748},{},[1749,1751,1757],{"type":45,"value":1750},"Validate it against ",{"type":39,"tag":204,"props":1752,"children":1754},{"className":1753},[],[1755],{"type":45,"value":1756},"aws-database-selection\u002Freferences\u002Fworkload-primary-artifact.schema.json",{"type":45,"value":1758},". If malformed or unreadable, tell the user and proceed without it.",{"type":39,"tag":249,"props":1760,"children":1761},{},[1762,1764,1769],{"type":45,"value":1763},"Acknowledge what's relevant in one or two ",{"type":39,"tag":105,"props":1765,"children":1766},{},[1767],{"type":45,"value":1768},"bold",{"type":45,"value":1770}," sentences, citing high-level facts from the artifact (dominant shapes, hard constraints, migration context) — do not parrot the entire artifact back.",{"type":39,"tag":249,"props":1772,"children":1773},{},[1774,1776,1782,1783,1789,1791,1797,1799,1804],{"type":45,"value":1775},"Scope-check: this skill is scoped to Amazon Timestream for InfluxDB (V2, V2 Read Replica, V3) — engine selection, schema design, migration from LiveAnalytics, Processing Engine plugins. If the artifact's ",{"type":39,"tag":204,"props":1777,"children":1779},{"className":1778},[],[1780],{"type":45,"value":1781},"workload_primaries.dominant_shapes",{"type":45,"value":1133},{"type":39,"tag":204,"props":1784,"children":1786},{"className":1785},[],[1787],{"type":45,"value":1788},"migration_context",{"type":45,"value":1790}," don't match that scope, emit weak backpressure per the handoff contract: suggest ",{"type":39,"tag":204,"props":1792,"children":1794},{"className":1793},[],[1795],{"type":45,"value":1796},"dynamodb-skill",{"type":45,"value":1798}," for non-InfluxDB time-series on DynamoDB, or go back to ",{"type":39,"tag":204,"props":1800,"children":1802},{"className":1801},[],[1803],{"type":45,"value":1704},{"type":45,"value":1805}," if the dominant shape isn't time-series, then ask the user whether to go back or proceed anyway. Do not silently misuse the artifact.",{"type":39,"tag":249,"props":1807,"children":1808},{},[1809],{"type":45,"value":1810},"Proceed with this skill's native workflow, citing artifact paths as evidence when recommendations are grounded in the requirements.",{"type":39,"tag":55,"props":1812,"children":1813},{},[1814],{"type":45,"value":1815},"All user-facing output from this skill follows the markdown-primitives-only formatting convention in the handoff contract: bold labels, backticks for paths and enum values, bullet lists for alternatives, no ASCII art or box-drawing characters.",{"items":1817,"total":1986},[1818,1835,1850,1865,1880,1890,1905,1921,1936,1949,1961,1976],{"slug":1819,"name":1819,"fn":1820,"description":1821,"org":1822,"tags":1823,"stars":21,"repoUrl":22,"updatedAt":1834},"agents-build","add capabilities to existing agent projects","Use when adding capabilities to an existing agent project — memory, app integration, VPC, multi-agent, migration, model changes, browser, code interpreter, or resource removal. Triggers on: \"add memory\", \"remember across sessions\", \"call agent from app\", \"invoke agent from code\", \"auth to call agent\", \"streaming responses\", \"VPC\", \"VPC connectivity\", \"VPC error\", \"can't reach from VPC\", \"multi-agent\", \"A2A\", \"A2A auth\", \"orchestrator not delegating\", \"specialist not called\", \"migrate Bedrock Agent\", \"after import\", \"migration issue\", \"framework for migration\", \"change model\", \"browser tool\", \"code interpreter\", \"delete agent\", \"tear down\", \"agentcore remove\", \"cross-account memory\", \"resource-based policy on memory\", \"pay for x402 content\", \"402 Payment Required\", \"microtransactions\", \"paid API or tool\". Not for connecting to external APIs via Gateway — use agents-connect. Not for scaffolding a new project — use agents-get-started. Not for CLI\u002Fdev server errors — use agents-debug. Strands vs LangGraph in a migration context routes here.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1824,1827,1830,1831],{"name":1825,"slug":1826,"type":15},"Agents","agents",{"name":1828,"slug":1829,"type":15},"Automation","automation",{"name":20,"slug":8,"type":15},{"name":1832,"slug":1833,"type":15},"Engineering","engineering","2026-07-12T08:42:53.812877",{"slug":1836,"name":1836,"fn":1837,"description":1838,"org":1839,"tags":1840,"stars":21,"repoUrl":22,"updatedAt":1849},"agents-connect","connect agents to external services","Use when connecting your agent to external APIs, tools, or services via Gateway, or restricting tool access with Cedar policies. Handles gateway setup, target types, outbound auth (OAuth, API key, IAM), credentials, and Cedar policy authoring. Triggers on: \"connect to API\", \"add gateway\", \"connect to MCP server\", \"Lambda tools\", \"OpenAPI\", \"gateway target\", \"Cedar policy\", \"restrict tools\", \"policy engine\", \"gateway auth error\", \"store API key\", \"outbound credential\", \"env var API key\", \"API key None after deploy\", \"credential not available after deploy\", \"should this be a gateway target\", \"give my agent tools\", \"add tools to agent\". Not for inbound auth (who can call your agent) — use agents-harden. Not for debugging agent behavior — use agents-debug. Not for VPC networking errors (agent can't reach APIs due to VPC) — use agents-build. Not for creating or hosting a new MCP server project — use agents-get-started.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1841,1842,1845,1848],{"name":1825,"slug":1826,"type":15},{"name":1843,"slug":1844,"type":15},"API Development","api-development",{"name":1846,"slug":1847,"type":15},"Authentication","authentication",{"name":20,"slug":8,"type":15},"2026-07-16T06:00:38.866147",{"slug":1851,"name":1851,"fn":1852,"description":1853,"org":1854,"tags":1855,"stars":21,"repoUrl":22,"updatedAt":1864},"agents-debug","debug agent and environment issues","Use when your agent or environment is broken — wrong answers, errors, timeouts, tool failures, or CLI issues. Reads traces and logs to diagnose root causes. Also checks prerequisites when the CLI itself isn't working. Triggers on: \"agent not working\", \"wrong answer\", \"agent error\", \"tool call failing\", \"debug agent\", \"check logs\", \"read traces\", \"broken\", \"500 error\", \"424 error\", \"model access denied\", \"command not found\", \"stuck in DELETING\", \"maxVms exceeded\", \"cold start diagnosis\", \"cold start slow\", \"agentcore create error\", \"create failed\", \"exit code 7\", \"connection refused local dev\". Not for deploy failures — use agents-deploy. Not for performance tuning without errors — use agents-optimize. Not for VPC configuration — use agents-build. Not for observability setup or missing logs — use agents-optimize.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1856,1857,1858,1861],{"name":1825,"slug":1826,"type":15},{"name":20,"slug":8,"type":15},{"name":1859,"slug":1860,"type":15},"Debugging","debugging",{"name":1862,"slug":1863,"type":15},"Observability","observability","2026-07-16T06:00:44.679093",{"slug":1866,"name":1866,"fn":1867,"description":1868,"org":1869,"tags":1870,"stars":21,"repoUrl":22,"updatedAt":1879},"agents-deploy","deploy AI agents to AWS","Use when deploying your agent to AWS, or when a deploy has failed. Handles pre-flight validation, CDK\u002FIAM\u002Fquota error diagnosis, version management, rollback, and canary deployments. Triggers on: \"deploy my agent\", \"agentcore deploy\", \"deploy failed\", \"CDK error\", \"rollback\", \"canary deploy\", \"pin version\", \"redeploy\", \"deploy stuck\". Not for production hardening — use agents-harden. Not for adding capabilities before deploy — use agents-build or agents-connect. Not for VPC configuration errors — use agents-build.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1871,1872,1873,1876],{"name":1825,"slug":1826,"type":15},{"name":20,"slug":8,"type":15},{"name":1874,"slug":1875,"type":15},"CI\u002FCD","ci-cd",{"name":1877,"slug":1878,"type":15},"Deployment","deployment","2026-07-12T08:42:55.059577",{"slug":1881,"name":1881,"fn":1882,"description":1883,"org":1884,"tags":1885,"stars":21,"repoUrl":22,"updatedAt":1889},"agents-get-started","scaffold and deploy new agent projects","Use when a developer wants to create a new agent project or get started with AgentCore. Handles framework selection, project scaffolding, first deploy, and first invocation. Triggers on: \"build an agent\", \"create an agent\", \"get started\", \"new project\", \"agentcore create\", \"which framework\", \"Strands vs LangGraph\", \"hello world agent\", \"first agent\", \"create MCP server\", \"host MCP server\", \"agentcore dev\", \"dev server\", \"what port\", \"local development\". Not for adding capabilities to existing projects — use agents-build or agents-connect. Strands vs LangGraph in a migration context routes to agents-build, not here. Connecting to an existing MCP server routes to agents-connect, not here.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1886,1887,1888],{"name":1825,"slug":1826,"type":15},{"name":20,"slug":8,"type":15},{"name":1877,"slug":1878,"type":15},"2026-07-12T08:42:51.963247",{"slug":1891,"name":1891,"fn":1892,"description":1893,"org":1894,"tags":1895,"stars":21,"repoUrl":22,"updatedAt":1904},"agents-harden","harden agents for production","Use when preparing your agent for production — IAM scoping, inbound auth (JWT, SigV4), secrets management, cold start optimization, session lifecycle, rate limiting, input validation, and quota guidance. Triggers on: \"production checklist\", \"harden agent\", \"production ready\", \"secure agent\", \"inbound auth\", \"going live\", \"cold start optimization\", \"session lifecycle\", \"StopRuntimeSession\", \"quota\", \"throttling\", \"maxVms\", \"rate limit\", \"security audit of outbound API calls\", \"gateway target audit for production\", \"restrict who can call\", \"lock down endpoint\", \"only our app can call\". Not for Cedar tool-restriction policies — use agents-connect. Not for quality measurement — use agents-optimize. Not for outbound credential storage or API key wiring — use agents-connect. Not for A2A agent-to-agent auth — use agents-build. Cold start observation and diagnosis (not optimization) routes to agents-debug.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1896,1897,1898,1901],{"name":1825,"slug":1826,"type":15},{"name":20,"slug":8,"type":15},{"name":1899,"slug":1900,"type":15},"Best Practices","best-practices",{"name":1902,"slug":1903,"type":15},"Security","security","2026-07-16T06:00:42.174705",{"slug":1906,"name":1906,"fn":1907,"description":1908,"org":1909,"tags":1910,"stars":21,"repoUrl":22,"updatedAt":1920},"agents-optimize","optimize agent quality and performance","Use when measuring or improving agent quality and performance — set up evaluators, online monitoring, CI\u002FCD quality gates, observability, or cost optimization. Triggers on: \"evaluate my agent\", \"add evaluator\", \"measure quality\", \"quality gate\", \"run evals\", \"agent too slow\", \"why is it slow\", \"reduce latency\", \"set up observability\", \"CloudWatch dashboard\", \"how much does my agent cost\", \"cost optimization\", \"logs not showing up\", \"logs missing\", \"spans not found\", \"eval failing\", \"eval error\", \"dev traces\", \"local traces\", \"agentcore dev traces\", \"traces to CloudWatch\". Not for debugging errors or crashes — use agents-debug. Slow but correct routes here; broken routes to debug.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1911,1912,1913,1916,1917],{"name":1825,"slug":1826,"type":15},{"name":20,"slug":8,"type":15},{"name":1914,"slug":1915,"type":15},"Evals","evals",{"name":1862,"slug":1863,"type":15},{"name":1918,"slug":1919,"type":15},"Performance","performance","2026-07-12T08:42:56.488105",{"slug":1922,"name":1922,"fn":1923,"description":1924,"org":1925,"tags":1926,"stars":21,"repoUrl":22,"updatedAt":1935},"amazon-aurora-mysql","manage Amazon Aurora MySQL clusters","Amazon Aurora MySQL — creates, modifies, and advises on Aurora MySQL clusters specifically (MySQL-compatible engine, Aurora serverless, parallel query). Trigger for Aurora MySQL cluster operations, ACU sizing, I\u002FO-Optimized storage, commitment pricing, or MySQL upgrade planning. Aurora MySQL uses full (VPC-based) configuration — express configuration is PostgreSQL-only. For Aurora PostgreSQL, use amazon-aurora-postgresql instead. Contains safety guardrails and response templates that override defaults.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1927,1928,1929,1932],{"name":20,"slug":8,"type":15},{"name":17,"slug":18,"type":15},{"name":1930,"slug":1931,"type":15},"MySQL","mysql",{"name":1933,"slug":1934,"type":15},"Serverless","serverless","2026-07-12T08:43:13.27939",{"slug":1937,"name":1937,"fn":1938,"description":1939,"org":1940,"tags":1941,"stars":21,"repoUrl":22,"updatedAt":1948},"amazon-aurora-postgresql","configure Amazon Aurora PostgreSQL clusters","Amazon Aurora PostgreSQL — creates, modifies, and advises on Aurora PostgreSQL clusters specifically (PostgreSQL-compatible engine, Aurora serverless, express configuration, pgvector, Babelfish). Trigger for Aurora PostgreSQL cluster operations, express-configuration quick-start, ACU sizing, I\u002FO-Optimized storage, commitment pricing, or PostgreSQL upgrade planning. For Aurora MySQL, use amazon-aurora-mysql instead. Contains safety guardrails, express-first routing, and response templates that override defaults.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1942,1943,1944,1947],{"name":20,"slug":8,"type":15},{"name":17,"slug":18,"type":15},{"name":1945,"slug":1946,"type":15},"PostgreSQL","postgresql",{"name":1933,"slug":1934,"type":15},"2026-07-16T06:00:34.789624",{"slug":1950,"name":1950,"fn":1951,"description":1952,"org":1953,"tags":1954,"stars":21,"repoUrl":22,"updatedAt":1960},"amazon-bedrock","build generative AI apps with Amazon Bedrock","Builds generative AI applications on Amazon Bedrock. Covers model invocation (Converse API, InvokeModel), RAG with Knowledge Bases, Bedrock Agents, Guardrails, and AgentCore. Use when invoking models, setting up Knowledge Bases, creating agents, applying guardrails, deploying to AgentCore, migrating\u002Fporting\u002Fconverting a Bedrock Agent (including inline agents) to an AgentCore Harness, troubleshooting Bedrock errors (ThrottlingException, AccessDeniedException), or choosing models (Claude, Llama, Nova, Titan). ALSO USE for prompt caching setup and debugging, quota health checks and throttling diagnosis, cost attribution and tracking, migrating between Claude model generations (4.5 to 4.6 to 4.7), chunking strategies, API selection (Converse vs InvokeModel), guardrail capabilities, and model selection. Also covers AgentCore Payments setup (x402, microtransactions, Payment Manager, Connector, Instrument, Coinbase CDP, Stripe Privy, 402 Payment Required, pay for content, paid endpoint, agent payments). NOT for custom model training, Rekognition, or Comprehend.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1955,1956,1957],{"name":1825,"slug":1826,"type":15},{"name":20,"slug":8,"type":15},{"name":1958,"slug":1959,"type":15},"LLM","llm","2026-07-25T05:30:35.20899",{"slug":1962,"name":1962,"fn":1963,"description":1964,"org":1965,"tags":1966,"stars":21,"repoUrl":22,"updatedAt":1975},"amazon-documentdb","manage Amazon DocumentDB clusters","Manages Amazon DocumentDB end-to-end — serverless-on-8.0 cluster setup, TLS\u002FVPC\u002Fdriver config, flexible-schema and vector-search data modeling, MongoDB compatibility assessment, DMS-based migration, slow-query diagnosis, major version upgrades (4.0→5.0→8.0), Well-Architected reviews (41-check wa_review.py), cost estimation, and security hardening. Retrieve for every DocumentDB question and when the user asks to set up or migrate MongoDB to AWS — DocumentDB is AWS's MongoDB-compatible managed database. Triggers: JSON document store, document database, MongoDB on AWS, Nested fields, Lambda cannot connect, TLS handshake, VPC port 27017, IAM auth, Secrets Manager, encryption at rest, $graphLookup, flexible schema, COLLSCAN, compound index, DMS migration, CDC cutover, $vectorSearch, RAG, Global Clusters, DR replication, cost sizing, audit, health check, production-readiness.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1967,1968,1969,1972],{"name":20,"slug":8,"type":15},{"name":17,"slug":18,"type":15},{"name":1970,"slug":1971,"type":15},"MongoDB","mongodb",{"name":1973,"slug":1974,"type":15},"NoSQL","nosql","2026-07-12T08:43:00.455878",{"slug":1977,"name":1977,"fn":1978,"description":1979,"org":1980,"tags":1981,"stars":21,"repoUrl":22,"updatedAt":1985},"amazon-dynamodb","design and debug DynamoDB data layers","Designs, reviews, and debugs DynamoDB data layers from design axioms — enumerates access patterns, chooses partition\u002Fsort keys and GSIs, decides single-table vs. multi-table, configures Streams, Global Tables, TTL, and zero-ETL integrations to OpenSearch\u002FRedshift\u002FSageMaker Lakehouse, and produces a defensible data-layer design with a monthly cost estimate and optional live validation. Applies whenever a user is designing, reviewing, or refactoring anything backed by DynamoDB — schemas, access patterns, GSIs, single- vs. multi-table choices, Streams consumers, transactional outboxes, Global Tables, zero-ETL pipelines — even when they don't say \"axioms\" or \"design review.\" Also applies when debugging hot partitions, throttling, unbounded Scans, LWW conflicts, or surprise bills on DynamoDB workloads.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1982,1983,1984],{"name":20,"slug":8,"type":15},{"name":17,"slug":18,"type":15},{"name":1973,"slug":1974,"type":15},"2026-07-16T06:00:37.690386",115,{"items":1988,"total":2038},[1989,1996,2003,2010,2017,2023,2030],{"slug":1819,"name":1819,"fn":1820,"description":1821,"org":1990,"tags":1991,"stars":21,"repoUrl":22,"updatedAt":1834},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1992,1993,1994,1995],{"name":1825,"slug":1826,"type":15},{"name":1828,"slug":1829,"type":15},{"name":20,"slug":8,"type":15},{"name":1832,"slug":1833,"type":15},{"slug":1836,"name":1836,"fn":1837,"description":1838,"org":1997,"tags":1998,"stars":21,"repoUrl":22,"updatedAt":1849},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1999,2000,2001,2002],{"name":1825,"slug":1826,"type":15},{"name":1843,"slug":1844,"type":15},{"name":1846,"slug":1847,"type":15},{"name":20,"slug":8,"type":15},{"slug":1851,"name":1851,"fn":1852,"description":1853,"org":2004,"tags":2005,"stars":21,"repoUrl":22,"updatedAt":1864},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2006,2007,2008,2009],{"name":1825,"slug":1826,"type":15},{"name":20,"slug":8,"type":15},{"name":1859,"slug":1860,"type":15},{"name":1862,"slug":1863,"type":15},{"slug":1866,"name":1866,"fn":1867,"description":1868,"org":2011,"tags":2012,"stars":21,"repoUrl":22,"updatedAt":1879},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2013,2014,2015,2016],{"name":1825,"slug":1826,"type":15},{"name":20,"slug":8,"type":15},{"name":1874,"slug":1875,"type":15},{"name":1877,"slug":1878,"type":15},{"slug":1881,"name":1881,"fn":1882,"description":1883,"org":2018,"tags":2019,"stars":21,"repoUrl":22,"updatedAt":1889},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2020,2021,2022],{"name":1825,"slug":1826,"type":15},{"name":20,"slug":8,"type":15},{"name":1877,"slug":1878,"type":15},{"slug":1891,"name":1891,"fn":1892,"description":1893,"org":2024,"tags":2025,"stars":21,"repoUrl":22,"updatedAt":1904},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2026,2027,2028,2029],{"name":1825,"slug":1826,"type":15},{"name":20,"slug":8,"type":15},{"name":1899,"slug":1900,"type":15},{"name":1902,"slug":1903,"type":15},{"slug":1906,"name":1906,"fn":1907,"description":1908,"org":2031,"tags":2032,"stars":21,"repoUrl":22,"updatedAt":1920},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[2033,2034,2035,2036,2037],{"name":1825,"slug":1826,"type":15},{"name":20,"slug":8,"type":15},{"name":1914,"slug":1915,"type":15},{"name":1862,"slug":1863,"type":15},{"name":1918,"slug":1919,"type":15},114]