Skip to content

feat(ec2): add Amazon EC2 integration - #9304

Merged
waleedlatif1 merged 3 commits into
stagingfrom
feat/ec2-integration
Oct 22, 2026
Merged

waleedlatif1 merged 3 commits into
stagingfrom
feat/ec2-integration

Conversation

@waleedlatif1

Copy link
Copy Markdown
Collaborator

Summary

  • Add an Amazon EC2 block with 25 operations, backed by @aws-sdk/client-ec2 as in-process tool operations (lib/internal/ec2), authenticated with an AWS access key like the other AWS blocks
  • Networking: describe Elastic IPs, NAT gateways, route tables, VPCs, subnets, security groups, internet gateways, network interfaces
  • Instances: describe instances / instance status, start, stop (hibernate, force), reboot, terminate
  • Elastic IPs: allocate, associate, disassociate, release
  • EBS and tags: describe volumes / snapshots, create snapshot, create / delete tags, plus describe regions and availability zones
  • Describe operations accept EC2 filters (JSON, with a wand), default to 100 results per page with a nextToken, and skip pagination when explicit IDs are given (EC2 rejects MaxResults alongside IDs)
  • AllocateAddress and CreateSnapshot run with SDK retries off, since neither takes a client token; snapshots default to OwnerIds: self for list calls so public snapshots aren't returned
  • ID lists accept comma-separated strings, arrays, or JSON array strings; tags accept objects, [{Key, Value}], or the block's tag table (including on the Agent tool path)
  • Icon, docs page with intro, templates, and skills

Type of Change

  • New feature

Testing

  • Ran every describe operation through the tool → operation → transform path against a live AWS account with read-only keys; checked pagination across pages, ID lookups, filters, null/empty optional inputs, input validation failures, and AWS error surfacing on a write with a malformed instance ID
  • check-canvas-sentences --block=ec2 (25/25), check-block-registry.ts origin/staging, check:tool-request-boundary, check:tool-metadata, check:docs, check:integration-catalog, check:deployment-config, check:bare-icons, check:source-conventions, check:utils, check:comment-hygiene, check:unused-exports, check:explicit-any, and related audits
  • tools/request-transport.test.ts, lib/internal/tool-operations/registry.server.test.ts, blocks/blocks.test.ts
  • Scoped tsc over the EC2 files; full type-check, check:audits, and test suites run in CI

Checklist

  • Code follows project style guidelines
  • Self-reviewed my changes
  • Tests added/updated and passing (new tests pass the test-audit authoring gate)
  • No new warnings introduced
  • I confirm that I have read and agree to the terms outlined in the Contributor License Agreement (CLA)

🤖 Generated with Claude Code

@waleedlatif1
waleedlatif1 requested a review from a team as a code owner October 22, 2026 18:28
@vercel

vercel Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated
docs Skipped Skipped Oct 22, 2026 7:02pm UTC

Request Review

@cubic-dev-ai cubic-dev-ai Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All reported issues were addressed across 51 files

Heads up: you’re close to your flex budget. Increase your flex budget so reviews don’t pause.

Turn on auto-fix | Re-trigger cubic

Comment thread apps/sim/lib/internal/ec2/schema.ts
Comment thread apps/sim/blocks/blocks/ec2.ts Outdated
Comment thread apps/sim/tools/ec2/describe_availability_zones.ts Outdated
@greptile-apps

greptile-apps Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerView in GreptileConfidence Score: 5/5

[High impact] The PR appears safe to merge; no blocking issues were found.

Summary

Adds an Amazon EC2 integration with 34 operations for instances, networking, Elastic IPs, EBS, and tags.

  • Workflows and agents can now use Amazon EC2 through one integration.
  • Workflows can start, stop, reboot, or terminate EC2 instances.
  • Workflows can find, allocate, attach, detach, and release Elastic IPs.
  • Workflows can inspect VPC networking and change security-group ingress rules.
  • Workflows can manage EBS storage and tags on EC2 resources.

Diagram

%%{init: {'theme': 'neutral'}}%%
flowchart LR
  A[Workflow or agent] --> B[EC2 tool]
  B --> C[Check inputs]
  C --> D[AWS EC2 SDK]
  D --> E[Map AWS response]
  E --> F[Tool output]
Loading

Reviews (3) · Last reviewed commit: "fix(ec2): generate filters with the json..." · Reviewed by Greptile

Comment thread apps/sim/blocks/blocks/ec2.ts Outdated
Comment thread apps/sim/lib/internal/ec2/client.ts Outdated
… rule, and EBS delete operations

- Add describe_network_acls, describe_vpc_endpoints, describe_vpc_peering_connections,
  describe_images, describe_key_pairs, authorize/revoke_security_group_ingress,
  delete_volume, and delete_snapshot
- Regenerate block successor names (fixes the lint job's repo audit)
- Merge the two tag tables into one tags field so fixed tags work in the Agent editor
- Keep a __proto__ tag key by building records with Object.fromEntries
- Pass [{Key, Value}] tag arrays through the block instead of dropping them
- Use a filter example each describe operation actually accepts
- Report revoked: false when a revoke matched no rule; mark the ingress target clauses core
@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@greptile

@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@cubic-dev-ai review this PR

@cubic-dev-ai

cubic-dev-ai Bot commented Oct 22, 2026

Copy link
Copy Markdown
Contributor

@cubic-dev-ai review this PR

@waleedlatif1 I have started the AI code review. It will take a few minutes to complete.

@cubic-dev-ai cubic-dev-ai Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All reported issues were addressed across 61 files

Heads up: you’re close to your flex budget. Increase your flex budget so reviews don’t pause.

Turn on auto-fix | Re-trigger cubic

Comment thread apps/sim/blocks/blocks/ec2.ts Outdated
@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@greptile

@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@cubic-dev-ai review this PR

@cubic-dev-ai

cubic-dev-ai Bot commented Oct 22, 2026

Copy link
Copy Markdown
Contributor

@cubic-dev-ai review this PR

@waleedlatif1 I have started the AI code review. It will take a few minutes to complete.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 61 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Heads up: you’re close to your flex budget. Increase your flex budget so reviews don’t pause.

Turn on auto-fix | Re-trigger cubic

@waleedlatif1
waleedlatif1 merged commit 53f4e91 into staging Oct 22, 2026
61 checks passed
@waleedlatif1
waleedlatif1 deleted the feat/ec2-integration branch October 22, 2026 19:10

This branch was previously deployed

1 inactive deployment
Preview — 27565668 Deployed Oct 22, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant