Every AWS resource as a table you can drive with the keyboard
The AWS CLI makes you remember flag combinations. The console makes you click through
tabs. orbit renders resources as dense, sortable tables and gives you vim keys, fuzzy
filtering and a command mode, so finding the instance you want is a matter of typing a
few characters rather than assembling a --query
string.
brew install doughlass/homebrew-tap/orbit
Start here
To look around without touching a real account, run
orbit --demo. It starts instantly on
synthetic data and never contacts AWS, which makes it the fastest way to learn the keys.
orbit # default profile and region
orbit --profile prod # a specific profile
orbit --region eu-west-1 # a specific region
orbit --write # allow writes; read-only is the default
orbit --demo # synthetic data, no AWS connection
orbit --demo all # EC2 + Route53 + CloudFront
Once you are in a resource list, the command mode is how you move around. Press
: and a list of every command appears; typing
narrows it, and Tab accepts the highlighted
match, so : then
ec then
Tab lands you on EC2 instances.
:ec2-instances # EC2 instances
:s3-buckets # S3 buckets
:lambda-functions # Lambda functions
:profiles # switch AWS profile
:regions # switch AWS region
Key bindings
The navigation vocabulary is vim's, because it is the one that works for this shape of
work. Press ? at any point for the in-app
help screen, which also lists the resource-specific actions available in your current
view.
| Key | Action |
|---|---|
j k ↑ ↓ |
Navigate items |
gg / Home |
Jump to top |
G / End |
Jump to bottom |
PgUp PgDn Ctrl+b Ctrl+f |
Page up and down |
] [ |
Next and previous page |
Enter |
Describe resource, or drill into a sub-resource |
d |
Describe selected resource |
: |
Command mode: :profiles, :regions, or a resource name |
/ |
Filter: fuzzy match, or AWS tag filters where supported |
← → then Tab |
Move the sort cursor and sort; Shift+Tab clears the sort |
⇧← ⇧→ or , . |
Scroll the table horizontally |
v |
Column visibility picker |
R |
Refresh |
0–5 |
Quick region switch |
? |
Help, including resource-specific actions |
Esc Backspace |
Go back |
Ctrl+c |
Quit |
Resource-specific actions appear in the help screen. For example
c connects to an EC2 instance over SSM,
i lists the images in a selected ECR
repository, and in Secrets Manager s shows a
secret value for ten seconds before hiding itself. The mutating ones
require --write — see
read-only by default.
What you can browse
orbit covers 160+ resource views across 60+ AWS services, grouped by category. Every resource type is a JSON definition rather than hardcoded Rust, so support for a new resource does not require changes to the binary's source.
Every resource type, page by page
Each resource view has its own page: the columns it shows, its actions with their AWS API calls, and the IAM permissions the read path needs.
CloudFront — CloudFront Distributions
CLOUDWATCHLOGS — CloudWatch Log Groups
DynamoDB — DynamoDB Tables
EC2 — EC2 Instances, EBS Volumes, EBS Snapshots, AMIs, VPCs, VPC Endpoints, VPC Peering
ECS — ECS Clusters, ECS Task Definitions
EKS — EKS Clusters
ELBv2 — Load Balancers
Lambda — Lambda Functions
MONITORING — CloudWatch Alarms
RDS — RDS Instances, Aurora Clusters
Route 53 — Route53 Hosted Zones
S3 — S3 Buckets
Secrets Manager — Secrets Manager Secrets
SNS — SNS Topics
SQS — SQS Queues
Compute
EC2 (instances, VPCs, subnets, security groups, network ACLs, route tables, internet and NAT gateways, elastic IPs, network interfaces, VPC endpoints, VPC peering, transit gateways, AMIs, EBS volumes and snapshots, launch templates, key pairs, placement groups, dedicated hosts), Lambda, ECS, EKS, Auto Scaling, Step Functions.
Storage
S3 (buckets, objects, bucket policies, lifecycle rules, replication rules), EFS, FSx, Backup.
Database
RDS, DynamoDB, ElastiCache, Redshift, DocumentDB, Neptune, Athena, EMR, Glue, MSK.
Networking
Route 53 (hosted zones and records), Route 53 Resolver, CloudFront, ELB, API Gateway, AppSync, VPC Lattice, App Mesh, Cloud Map.
Security
IAM (users, groups, roles, policies, access keys, instance profiles, SAML and OIDC providers), Secrets Manager, KMS, ACM, Cognito, WAF, Shield, GuardDuty, Inspector, Macie, Security Hub.
Management & messaging
CloudFormation, CloudWatch, CloudTrail, SSM, Config, Service Quotas, Trusted Advisor, SQS, SNS, EventBridge, Amazon MQ, Kinesis, Data Firehose.
Shell completions
orbit ships completions for bash, zsh and fish, so the
: resource names and CLI flags autocomplete
like any other command.
eval "$(orbit completion bash)" # add to ~/.bashrc
eval "$(orbit completion zsh)" # add to ~/.zshrc
orbit completion fish | source # add to config.fish
Browsing questions
How do I find a specific resource quickly?
Press / to filter the current list with client-side fuzzy matching, which matches as you type without calling AWS again. Where a service supports it, filters can also run server-side against AWS tags. Narrowing to one row and pressing Enter describes it.
How do I switch between AWS profiles and regions?
Use the command mode: :profiles to switch AWS profile and :regions to switch region, both without restarting orbit. The number keys 0 to 5 jump between regions directly, and --profile and --region set the starting context on launch.
What is the difference between orbit and the AWS CLI?
The AWS CLI is for scripting and one-off commands, and it is excellent at that. orbit is for exploring: it renders resources as dense tables you drive with single keystrokes, keeps your profile and region context in the header, and supports fuzzy filtering and sorting without you having to remember flags. Use the CLI to automate, orbit to see what you have.
Can I try orbit without an AWS account?
Yes. Run orbit --demo to start instantly with synthetic data and no AWS connection at all. orbit --demo all shows EC2, Route53 and CloudFront, and you can name specific resources such as orbit --demo ec2-instances,cloudfront-distributions.
Does orbit work with AWS SSO and assumed roles?
Yes. orbit uses the standard AWS credential chain, so SSO, role assumption, console login and IMDSv2 all work without extra configuration. If an Identity Center token has expired, orbit prompts you to authenticate, and it reuses a cached token if you already ran aws sso login.
Read next
k9s for AWS
How orbit compares to k9s, the Kubernetes terminal UI.
Read-only by default
Why writes are opt-in per invocation, and what that protects against.
SSO and multiple profiles
The credential chain, Identity Center, role assumption and LocalStack.
orbit is not affiliated with or endorsed by Amazon Web Services, Inc. AWS is a trademark of Amazon.com, Inc. orbit is MIT licensed.