Every example below runs read-only against live cloud state and returns structured output you can render however you want. These five are the everyday verbs; Solon also ships the identity and reachability verbs (path-analysis, escalation-paths, compromise-reachability) that trace who and what can reach what across network and identity. Solon advises; you apply. It never touches your cloud.
ask drives the agent. audit and recommend are templated wrappers over ask; change-package and architect add their own grounded emit and citation discipline. The identity and reachability verbs (path-analysis, escalation-paths, compromise-reachability) run over the same loop to trace access across network and identity. Every verb shares the grounding and citation registry and returns structured output you can render however you want.
--strictfail on any ungrounded citation--jsonstructured object out--max-iterations Ncap the tool-use loop--model <id>swap the Claude modelEach block is a real command and its grounded output. The architect example shows the honesty split: what Solon observed in your account, separated from general best-practice guidance it did not assess.
askAsk your cloud anything.
→ tool_use aws.list_security_groups region=us-east-1 → tool_use aws.describe_security_group_rules count=146 ← 3 groups match. • sg-0a1b2c3d4e5f prod-bastion 0.0.0.0/0 → :22 ⚠ critical • sg-09ffaa11bb22 legacy-jenkins 0.0.0.0/0 → :22 ⚠ critical • sg-07ee44dd55cc staging-bastion 0.0.0.0/0 → :22 ⚠ critical Cited: sg-0a1b2c3d4e5f, sg-09ffaa11bb22, sg-07ee44dd55cc ✓ grounded
auditCheck yourself before the auditor does.
→ playbook.load cis-aws-foundations@3.0.0 section=5 → aws.list_vpcs count=12 → aws.list_security_groups count=438 → aws.list_nacls count=24 Findings (Section 5, Networking): 5.1 Ensure no NACL allows ingress from 0.0.0.0/0 to :22 PASS 5.2 Ensure no NACL allows ingress from 0.0.0.0/0 to :3389 FAIL (acl-0a1b) 5.3 Ensure VPC flow logs are enabled in all VPCs FAIL (vpc-09ee, vpc-07dd) 5.4 Ensure default security group restricts all traffic FAIL (sg-default in vpc-04aa) 5.5 Ensure routing tables for VPC peering are 'least access' PASS 4 of 9 controls failed. 0 grounding violations.
→ playbook.load cis-aws-foundations@3.0.0 section=1 → aws.list_iam_users count=38 → aws.get_account_password_policy → aws.list_access_keys count=61 Findings (Section 1, Identity and Access Management): 1.4 Ensure no root account access key exists FAIL (root key active) 1.5 Ensure MFA is enabled for the root account FAIL 1.12 Ensure access keys are rotated every 90 days or less FAIL (7 users) 1.16 Ensure no policies grant full "*:*" privileges FAIL (policy AdminAll) Read-only. Solon recommends the fix; you apply it. Cited: root, AdminAll, 7 user ARNs ✓ grounded
recommendGet the exact fix, not a vague warning.
→ Synthesizing minimal-diff rule set...
ALLOW source=sg-abc dest=sg-def proto=tcp port=8080
Shadowed by: (none)
Redundant with: (none)
Existing path between sg-abc and sg-def: blocked by NACL acl-0a1b at :8080
Apply via:
aws ec2 authorize-security-group-ingress \
--group-id sg-def --protocol tcp --port 8080 \
--source-group sg-abc
Cited: sg-abc, sg-def, acl-0a1b ✓ groundedchange-packageA change plan with the undo already written.
→ Investigating read-only...
→ aws.describe_security_group_rules count=146
→ aws.list_nacls count=24
Pre-checks:
• sg-abc and sg-def both exist in vpc-04aa PASS
• No existing rule already permits sg-abc → :8080 PASS
• NACL acl-0a1b currently blocks :8080 between them NOTED
Ordered change (minimal diff):
step 1 authorize sg-def ingress tcp/8080 from sg-abc
back-out: revoke that ingress rule [reversible]
step 2 add NACL acl-0a1b allow tcp/8080 sg-abc → sg-def
back-out: delete the added NACL entry [reversible]
Post-verify:
• path sg-abc → sg-def on :8080 reachable assert
• no new 0.0.0.0/0 exposure introduced assert
Solon emits the package; you apply it. Cited: sg-abc, sg-def, acl-0a1b ✓ groundedarchitectDesign it to the gold standard from day one.
→ aws.list_iam_users count=38
→ aws.list_security_groups count=438
→ aws.list_s3_buckets count=52
→ playbook.load aws-well-architected pillar=security SEC1..SEC11
Design recommendations (grounded on what Solon reads):
SEC2 Reduce blast radius: 7 users hold inline "*:*" policies; move to
scoped roles assumed via OIDC. Cited: 7 user ARNs, policy AdminAll
SEC5 Close 3 security groups with 0.0.0.0/0 → :22 ingress.
Cited: sg-0a1b, sg-09ff, sg-07ee
SEC8 Enable default encryption on 4 public-readable S3 buckets.
Cited: 4 bucket ARNs
General guidance (not assessed from your account):
SEC4 Stand up centralized detection (GuardDuty, Security Hub) and route
findings to a single account. Solon does not read detection config.
SEC10 Define an incident-response runbook and rehearse it. Out of read scope.
Advise-only design. Solon never applies anything; you decide what to act on.
3 grounded recommendations, 2 labeled guidance items. 0 grounding violations. ✓ groundedThe pilot is a fixed-price build-and-hand-off: we land Solon inside your infrastructure, and you keep what we build.