{
 "features_resolved": {
  "snapshot_any": true,
  "snapshot_mem": true,
  "fork": false,
  "pause_resume": true,
  "persistent_disk": true,
  "whole_disk": true,
  "persist_scope": null,
  "volumes": false,
  "auto_stop_idle": true,
  "long_sessions": true,
  "custom_image": true,
  "image_snapshot": true,
  "image_oci": false,
  "vm_isolation": true,
  "docker_inside": true,
  "nested_virt": false,
  "root": true,
  "systemd": true,
  "browser": true,
  "desktop": true,
  "computer_use": true,
  "code_interpreter": null,
  "browser_control": null,
  "desktop_control": null,
  "browser_and_desktop": true,
  "anti_bot": false,
  "captcha_solving": false,
  "residential_ip": false,
  "agent_harnesses": true,
  "ssh": false,
  "public_ipv4": false,
  "inbound_https": true,
  "custom_domain": true,
  "raw_tcp_inbound": null,
  "egress_allowlist": false,
  "open_internet": null,
  "static_egress_ip": false,
  "private_network": null,
  "self_host": false,
  "byoc": false,
  "open_source": false,
  "soc2": true,
  "hipaa": false,
  "sso": true,
  "gpu": false,
  "arm64": false,
  "windows": false,
  "macos": false,
  "lang_python": true,
  "lang_node": true,
  "lang_go": null,
  "lang_rust": null,
  "lang_java": null,
  "gpu_desktop": null,
  "credential_injection": false,
  "egress_http_rules": false,
  "wake_on_request": true,
  "live_resize": false,
  "fork_running": false,
  "memory_snapshot_fork": false,
  "webhooks": null,
  "scheduled_wakeups": true,
  "audit_logs": true,
  "eu_data_residency": false,
  "zero_data_retention": null,
  "scoped_api_keys": null,
  "spend_limits": true,
  "mcp_server": false,
  "usage_api": false,
  "snapshot_auto": true,
  "snapshot_on_demand": false,
  "harness_api": true,
  "own_agent_api": false,
  "fast_boot": null,
  "strong_isolation": true,
  "ingress_rules": true,
  "guest_firewall": true,
  "secret_proxy": false,
  "secret_proxy_any": false,
  "volume_attach": false,
  "volume_shared": false,
  "sidecar": null,
  "fuse": true,
  "kernel_features": true,
  "burst": null
 },
 "company": {
  "id": "amp",
  "checked": "2026-09-30",
  "company": "Amp Frontier Corporation",
  "ownership": {
   "value": "independent",
   "parent": "Sourcegraph, Inc. (former parent; Amp was spun out as a separate company in December 2025)",
   "source": "https://ampcode.com/news/amp-inc",
   "quote": "Amp is becoming a separate company. We're spinning out of Sourcegraph to become an independent research lab."
  },
  "stage": {
   "value": "bootstrapped",
   "source": "https://ampcode.com/news/amp-inc",
   "quote": "Amp's traction spun us out of Sourcegraph. Amp is profitable.",
   "confidence": "low",
   "note": "No external funding round has been disclosed for Amp Frontier Corporation as an independent entity; the company describes itself as profitable rather than newly VC-funded. Its former parent Sourcegraph, Inc. had raised $223M across Series A-D (last: $125M Series D, July 2021, led by Andreessen Horowitz), but that capital and cap table belong to Sourcegraph, not confirmed to carry over to the spun-out Amp entity."
  },
  "accelerators": [],
  "total_funding_usd": {
   "value": null,
   "status": "unknown"
  },
  "last_round": {
   "type": "unknown",
   "amount_usd": null,
   "date": null,
   "leads": [],
   "status": "unknown",
   "source": "https://ampcode.com/news/amp-inc",
   "quote": "Amp is becoming a separate company. We're spinning out of Sourcegraph to become an independent research lab."
  },
  "investors": [
   "Jungle Ventures"
  ],
  "portfolio_listings": [
   {
    "source": "Jungle Ventures",
    "company": "Amp Orbs",
    "batch": null,
    "how": "exact-name"
   }
  ],
  "revenue": {
   "value": null,
   "status": "unknown"
  },
  "employees": {
   "value": null,
   "source": ""
  },
  "note": "Amp was originally an AI coding-agent product of Sourcegraph, Inc. (founded 2013 by Quinn Slack and Beyang Liu; raised $223M total, last round $125M Series D in July 2021 led by Andreessen Horowitz at a $2.625B valuation, per Wikipedia/Tracxn/TechCrunch). In December 2025 Sourcegraph announced Amp would spin out as its own independent company, 'Amp Frontier Corporation', citing Amp's commercial traction and profitability. No new external funding round for the spun-out entity has been found; figures above regarding funding/investors describe the former parent Sourcegraph, not Amp Frontier Corporation directly."
 },
 "id": "amp",
 "name": "Amp Orbs",
 "url": "https://ampcode.com/docs/orbs/sizes-and-costs",
 "category": "dev-env",
 "isolation": "vm",
 "modes": [
  {
   "key": "orb-compute",
   "label": "Hosted orb compute, PAYG or subscription allowance",
   "flags": [
    "alt"
   ],
   "os": [
    "linux"
   ],
   "regions": null,
   "gpu_only": false,
   "features": {},
   "pricing": "sizes",
   "vcpu_h": null,
   "ram_gib_h": null,
   "cpu_basis": "alloc",
   "ram_basis": "alloc",
   "active_floor": 0,
   "ram_per_vcpu": [
    null,
    null
   ],
   "ram_fixed_per_vcpu": null,
   "vcpu_options": null,
   "min_vcpu": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes": [
    {
     "name": "a1.tiny",
     "vcpu": 1,
     "ram_gib": 2,
     "disk_gib": 60,
     "hour": 0.08,
     "month_cap": null
    },
    {
     "name": "a1.small",
     "vcpu": 2,
     "ram_gib": 4,
     "disk_gib": 60,
     "hour": 0.17,
     "month_cap": null
    },
    {
     "name": "a1.medium",
     "vcpu": 4,
     "ram_gib": 8,
     "disk_gib": 60,
     "hour": 0.33,
     "month_cap": null
    },
    {
     "name": "a1.large",
     "vcpu": 8,
     "ram_gib": 16,
     "disk_gib": 60,
     "hour": 0.66,
     "month_cap": null
    },
    {
     "name": "a1.xxlarge",
     "vcpu": 16,
     "ram_gib": 32,
     "disk_gib": 60,
     "hour": 1.32,
     "month_cap": null
    },
    {
     "name": "a1.3xlarge",
     "vcpu": 16,
     "ram_gib": 44,
     "disk_gib": 60,
     "hour": 2.13,
     "month_cap": null
    }
   ],
   "pool_tiers": null,
   "requires_always_on": false,
   "always_on_month_per_instance": null,
   "commit_note": null,
   "min_billed_seconds": null,
   "granularity_s": 60,
   "start_fee": null,
   "boot_overhead_s": null,
   "multiplier": 1,
   "windows_vcpu_h": null,
   "gpu": {},
   "note": "Per-minute running allocation; paid per-size orb allowances represented by plan size restriction. Idle tail must be in workload duration."
  }
 ],
 "storage": {
  "included_disk_gib": 60,
  "disk_gib_month": null,
  "disk_billed_when_stopped": false,
  "snapshot_gib_month": 0,
  "paused_ram_billed": false
 },
 "network": {
  "egress_free_gib": null,
  "egress_gib": null,
  "ipv4_month": null,
  "ipv4_available": null
 },
 "plans": [
  {
   "name": "Hobby / pay as you go",
   "fee": 0,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 0,
   "per_seat": 0,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.tiny",
    "a1.small",
    "a1.medium",
    "a1.large",
    "a1.xxlarge"
   ],
   "max_starts_per_hour": 32,
   "max_starts_per_day": 308,
   "note": "Model inference, tools and other services billed separately. Spawn pacing (per user): burst of 20 orb starts, then one every 5 min; max_starts_per_hour 32 = 20 + 12, max_starts_per_day 308 = 20 + 288. Later starts queue, not fail."
  },
  {
   "name": "Megawatt — a1.tiny allowance",
   "fee": 20,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 120,
   "per_seat": null,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.tiny"
   ],
   "max_starts_per_hour": 32,
   "max_starts_per_day": 308,
   "note": "One subscriber: 90000 included orb minutes/month of this size. included_usd is compute-only conversion (90000/60)*0.08; not transferable cash. Model credits separate and not deducted. No tier stacking or pooling. Multi-user allowances need per-person attribution. Spawn pacing (per user): burst of 20 orb starts, then one every 5 min; max_starts_per_hour 32 = 20 + 12, max_starts_per_day 308 = 20 + 288. Later starts queue, not fail."
  },
  {
   "name": "Megawatt — a1.small allowance",
   "fee": 20,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 127.5,
   "per_seat": null,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.small"
   ],
   "max_starts_per_hour": 32,
   "max_starts_per_day": 308,
   "note": "One subscriber: 45000 included orb minutes/month of this size. included_usd is compute-only conversion (45000/60)*0.17; not transferable cash. Model credits separate and not deducted. No tier stacking or pooling. Multi-user allowances need per-person attribution. Spawn pacing (per user): burst of 20 orb starts, then one every 5 min; max_starts_per_hour 32 = 20 + 12, max_starts_per_day 308 = 20 + 288. Later starts queue, not fail."
  },
  {
   "name": "Megawatt — a1.medium allowance",
   "fee": 20,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 123.75,
   "per_seat": null,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.medium"
   ],
   "max_starts_per_hour": 32,
   "max_starts_per_day": 308,
   "note": "One subscriber: 22500 included orb minutes/month of this size. included_usd is compute-only conversion (22500/60)*0.33; not transferable cash. Model credits separate and not deducted. No tier stacking or pooling. Multi-user allowances need per-person attribution. Spawn pacing (per user): burst of 20 orb starts, then one every 5 min; max_starts_per_hour 32 = 20 + 12, max_starts_per_day 308 = 20 + 288. Later starts queue, not fail."
  },
  {
   "name": "Megawatt — a1.large allowance",
   "fee": 20,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 123.75,
   "per_seat": null,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.large"
   ],
   "max_starts_per_hour": 32,
   "max_starts_per_day": 308,
   "note": "One subscriber: 11250 included orb minutes/month of this size. included_usd is compute-only conversion (11250/60)*0.66; not transferable cash. Model credits separate and not deducted. No tier stacking or pooling. Multi-user allowances need per-person attribution. Spawn pacing (per user): burst of 20 orb starts, then one every 5 min; max_starts_per_hour 32 = 20 + 12, max_starts_per_day 308 = 20 + 288. Later starts queue, not fail."
  },
  {
   "name": "Megawatt — a1.xxlarge allowance",
   "fee": 20,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 123.75,
   "per_seat": null,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.xxlarge"
   ],
   "max_starts_per_hour": 32,
   "max_starts_per_day": 308,
   "note": "One subscriber: 5625 included orb minutes/month of this size. included_usd is compute-only conversion (5625/60)*1.32; not transferable cash. Model credits separate and not deducted. No tier stacking or pooling. Multi-user allowances need per-person attribution. Spawn pacing (per user): burst of 20 orb starts, then one every 5 min; max_starts_per_hour 32 = 20 + 12, max_starts_per_day 308 = 20 + 288. Later starts queue, not fail."
  },
  {
   "name": "Gigawatt — a1.tiny allowance",
   "fee": 200,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 1280,
   "per_seat": null,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.tiny"
   ],
   "max_starts_per_hour": 32,
   "max_starts_per_day": 308,
   "note": "One subscriber: 960000 included orb minutes/month of this size. included_usd is compute-only conversion (960000/60)*0.08; not transferable cash. Model credits separate and not deducted. No tier stacking or pooling. Multi-user allowances need per-person attribution. Spawn pacing (per user): burst of 20 orb starts, then one every 5 min; max_starts_per_hour 32 = 20 + 12, max_starts_per_day 308 = 20 + 288. Later starts queue, not fail."
  },
  {
   "name": "Gigawatt — a1.small allowance",
   "fee": 200,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 1360,
   "per_seat": null,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.small"
   ],
   "max_starts_per_hour": 32,
   "max_starts_per_day": 308,
   "note": "One subscriber: 480000 included orb minutes/month of this size. included_usd is compute-only conversion (480000/60)*0.17; not transferable cash. Model credits separate and not deducted. No tier stacking or pooling. Multi-user allowances need per-person attribution. Spawn pacing (per user): burst of 20 orb starts, then one every 5 min; max_starts_per_hour 32 = 20 + 12, max_starts_per_day 308 = 20 + 288. Later starts queue, not fail."
  },
  {
   "name": "Gigawatt — a1.medium allowance",
   "fee": 200,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 1320,
   "per_seat": null,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.medium"
   ],
   "max_starts_per_hour": 32,
   "max_starts_per_day": 308,
   "note": "One subscriber: 240000 included orb minutes/month of this size. included_usd is compute-only conversion (240000/60)*0.33; not transferable cash. Model credits separate and not deducted. No tier stacking or pooling. Multi-user allowances need per-person attribution. Spawn pacing (per user): burst of 20 orb starts, then one every 5 min; max_starts_per_hour 32 = 20 + 12, max_starts_per_day 308 = 20 + 288. Later starts queue, not fail."
  },
  {
   "name": "Gigawatt — a1.large allowance",
   "fee": 200,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 1320,
   "per_seat": null,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.large"
   ],
   "max_starts_per_hour": 32,
   "max_starts_per_day": 308,
   "note": "One subscriber: 120000 included orb minutes/month of this size. included_usd is compute-only conversion (120000/60)*0.66; not transferable cash. Model credits separate and not deducted. No tier stacking or pooling. Multi-user allowances need per-person attribution. Spawn pacing (per user): burst of 20 orb starts, then one every 5 min; max_starts_per_hour 32 = 20 + 12, max_starts_per_day 308 = 20 + 288. Later starts queue, not fail."
  },
  {
   "name": "Gigawatt — a1.xxlarge allowance",
   "fee": 200,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 1320,
   "per_seat": null,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.xxlarge"
   ],
   "max_starts_per_hour": 32,
   "max_starts_per_day": 308,
   "note": "One subscriber: 60000 included orb minutes/month of this size. included_usd is compute-only conversion (60000/60)*1.32; not transferable cash. Model credits separate and not deducted. No tier stacking or pooling. Multi-user allowances need per-person attribution. Spawn pacing (per user): burst of 20 orb starts, then one every 5 min; max_starts_per_hour 32 = 20 + 12, max_starts_per_day 308 = 20 + 288. Later starts queue, not fail."
  },
  {
   "name": "Gigawatt — a1.3xlarge allowance",
   "fee": 200,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 1326.7415,
   "per_seat": null,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.3xlarge"
   ],
   "max_starts_per_hour": 32,
   "max_starts_per_day": 308,
   "note": "One subscriber: 37373 included orb minutes/month of this size. included_usd is compute-only conversion (37373/60)*2.13; not transferable cash. Model credits separate and not deducted. No tier stacking or pooling. Multi-user allowances need per-person attribution. Spawn pacing (per user): burst of 20 orb starts, then one every 5 min; max_starts_per_hour 32 = 20 + 12, max_starts_per_day 308 = 20 + 288. Later starts queue, not fail."
  },
  {
   "name": "Enterprise",
   "fee": null,
   "flags": [
    "sales"
   ],
   "fee_is_credit": false,
   "included_usd": 0,
   "per_seat": 0,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": [
    "a1.tiny",
    "a1.small",
    "a1.medium",
    "a1.large",
    "a1.xxlarge",
    "a1.3xlarge"
   ],
   "note": "Custom pricing; pooled credits only, no paid user seats; orb prices for enterprise workspaces shown in project settings (may differ from list); higher resource quotas and rate limits; SCIM, spend limits, audit logs, IP allowlisting."
  }
 ],
 "free": {
  "monthly_credit": null,
  "one_time_credit": null
 },
 "features": {
  "linux": true,
  "windows": false,
  "macos": false,
  "arm64": false,
  "gpu": false,
  "pause_resume": true,
  "fork": false,
  "persistent_disk": true,
  "volumes": null,
  "auto_stop_idle": true,
  "custom_image": null,
  "docker_inside": true,
  "nested_virt": false,
  "root": true,
  "systemd": true,
  "browser": true,
  "desktop": true,
  "computer_use": true,
  "code_interpreter": null,
  "agent_harnesses": true,
  "ssh": false,
  "public_ipv4": false,
  "inbound_https": true,
  "custom_domain": true,
  "raw_tcp_inbound": null,
  "egress_allowlist": false,
  "static_egress_ip": false,
  "private_network": null,
  "self_host": false,
  "byoc": false,
  "open_source": false,
  "soc2": true,
  "hipaa": false,
  "sso": true,
  "gpu_types": [],
  "snapshot": "mem",
  "max_session_h": null,
  "regions": [
   "us"
  ],
  "lang_python": true,
  "lang_node": true,
  "lang_go": null,
  "lang_rust": null,
  "lang_java": null,
  "gpu_desktop": null,
  "credential_injection": false,
  "egress_http_rules": false,
  "wake_on_request": true,
  "live_resize": false,
  "fork_running": false,
  "memory_snapshot_fork": false,
  "webhooks": null,
  "scheduled_wakeups": true,
  "audit_logs": true,
  "eu_data_residency": false,
  "zero_data_retention": null,
  "scoped_api_keys": null,
  "spend_limits": true,
  "mcp_server": false,
  "snapshot_auto": true,
  "snapshot_on_demand": false,
  "harness_api": true,
  "ingress_rules": true,
  "guest_firewall": true,
  "secret_proxy": false,
  "volume_attach": false,
  "volume_shared": false,
  "isolation": "firecracker",
  "image_oci": false,
  "anti_bot": false,
  "captcha_solving": false,
  "egress_ip_type": "datacenter",
  "own_agent_api": false,
  "max_session_unlimited": true,
  "usage_api": false
 },
 "perf": {
  "cpu_runs_s": null,
  "cold_start_ms": null,
  "burst_tti_ms": null,
  "dax_s": null
 },
 "knobs": [],
 "caveats": [
  "Underlying isolation technology and CPU sharing",
  "Concurrent running-orb quota (spawn pacing is not concurrency)",
  "Exact cross-size subscription allowance conversion and overage bucket mechanics",
  "Disk overage and transfer overage; repository storage is not orb disk",
  "Orb spawn pacing, per user: \"Each user can start a burst of 20 metered orbs. After that burst, Amp starts one new orb every five minutes. Later orb starts wait instead of failing. The thread shows the estimated wait and starts the orb when capacity is available. If you need a higher limit, contact Amp support.\" (https://ampcode.com/docs/orbs, checked 2026-10-14). Modelled as max 32 starts/hour and 308/day; queued starts add wait time (50 agents take ~2.5 h to all start, 1,000 jobs ~3.4 days), which the price does not show.",
  "Unknown storage, egress, min charge and start fee must not be silently treated as confirmed zero.",
  "Subscription plans are size-restricted representations of one real subscriber tier; choose only one, never stack variants. included_usd covers compute only, not storage/egress/models.",
  "Per-user orb allowances do not pool. Card accurate for one subscriber and uniform orb size; multi-seat or mixed-size workloads need explicit per-user/minute accounting.",
  "Model allowance ($20/$200) is separate and not subtracted from compute.",
  "a1.3xlarge requires Gigawatt/Enterprise; Hobby/Megawatt plans exclude it.",
  "Default E2B microVM orbs documented in GCP us-west1; no specific hypervisor assumed. Self-hosted runner support does not change hosted price.",
  "Enterprise orb rates may differ from list: 'Orb pricing for enterprise workspaces is shown in project settings.'",
  "Idle tail: orb bills until 5 min after agent work ends or 20 min after last user interaction (whichever later). Opening an orb thread in web/app, any authorized portal HTTP request (incl. from a service/uptime check) wakes the orb and starts a new 20-min billed window; Orb Saver Mode stops thread-opening from waking it. Archiving a thread pauses immediately. Startup time is billed.",
  "Education discount: students/teachers get Megawatt for $10/month (same 45,000 small-orb minutes, $10 of included credits); Megawatt only, eligibility-gated so not modelled as a general plan.",
  "Subscription allowance is one per-user bucket across sizes (larger orbs consume it faster), per-person and not pooled in workspaces; it resets monthly, does not roll over; beyond it orbs are paid from credits at standard price. Subscriptions are for a single User. Teams workspace has no fee but SSO/custom domains need at least one paid member."
 ],
 "sources": [
  "https://ampcode.com/docs/orbs/sizes-and-costs",
  "https://ampcode.com/docs/pricing",
  "https://ampcode.com/pricing",
  "https://ampcode.com/docs/orbs",
  "https://ampcode.com/docs/orbs/customizing",
  "https://ampcode.com/docs/orbs/portals",
  "https://ampcode.com/docs/orbs/desktop",
  "https://ampcode.com/docs/orbs/handling-secrets"
 ],
 "fleet": {
  "default_max_instances": null,
  "default_max_vcpu": null,
  "default_max_gpus": null,
  "raise": "ticket",
  "raise_time_days": null,
  "verification": null,
  "tiers": null,
  "notes": "Orbs have published sizes and included minutes, but neither determines simultaneous fleet capacity. Enterprise advertises higher resource quotas/rate limits via contact sales; baseline quotas and review timing not stated. Spawn pacing per user: burst of 20 orb starts, then one new orb every five minutes; later starts wait instead of failing; higher limit via Amp support (docs/orbs, checked 2026-10-14).",
  "sources": [
   "https://ampcode.com/docs/pricing",
   "https://ampcode.com/docs/orbs/sizes-and-costs",
   "https://ampcode.com/docs/orbs"
  ],
  "researched": "2026-09-28"
 },
 "audit_2026_09_29": {
  "applied": 15,
  "source": "checked against the provider's live pricing and docs pages",
  "reviewed": 4
 },
 "feature_evidence": {
  "snapshot_auto": {
   "value": true,
   "source": "https://ampcode.com/docs/orbs/sizes-and-costs",
   "quote": "Amp automatically pauses an orb when it is idle and pauses it right away when its thread is archived. ... A service that the agent left running, e.g., a dev server, does not keep the orb awake on its own. It pauses with the orb and is available again when the orb wakes.",
   "note": "Trigger: idle (5 min no agent work AND 20 min no user interaction) or thread archive; wakes automatically on new message, portal request, automation/webhook. /docs/orbs: 'When you send another prompt, the orb wakes up with your conversation, files, and services still in place.' Running processes appear to survive (E2B microVM pause), so memory likely included (medium); docs still offer .agents/resume to 'Restore local state that does not survive a pause' (e.g. tunnels). Paused orb costs nothing, retained for weeks.",
   "checked": "2026-09-29"
  },
  "snapshot_on_demand": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "A snapshot is a saved copy of a prepared orb. It contains the repository and anything changed by `.agents/setup`, such as installed software. Amp uses snapshots so every new thread does not need to repeat the same setup work. ... If setup finishes successfully, Amp saves the prepared orb as the new project snapshot. ... Amp can reuse a matching project snapshot for up to 72 hours. ... When you need a setup change to apply right away, delete the cached snapshot from the project settings or run: amp projects snapshots list <project> / amp projects snapshots delete <project> --resource a1.small",
   "note": "No contradiction with features.snapshot='mem': that field describes the automatic pause/resume mechanism (idle pause preserves filesystem+memory, per docs/orbs 'the orb wakes up with your conversation, files, and services still in place'), which is snapshot_auto, not a user-triggered on-demand snapshot API. The only user-facing snapshot object is the automatic, per-project/per-size setup snapshot; users can only list/delete it (to force a refresh), not create a snapshot of a running orb on demand, and there is no fork/checkpoint-on-demand command in the CLI/SDK docs. False confirmed.",
   "checked": "2026-09-30"
  },
  "harness_api": {
   "value": true,
   "source": "https://ampcode.com/docs/sdk",
   "quote": "By default the agent runs in the local Amp CLI process. Set the executor to `orb` to run it in an [orb](/docs/orbs), or to `runner` with a runner ID to run it on one of your [runners](/docs/cli/runners) ... In both cases the local process only streams the results.",
   "note": "Harness = Amp's own agent only. TypeScript/Python SDK execute() with executor 'orb' streams JSON messages and continues threads by ID; CLI `amp -ox \"prompt\" --stream-json` and `amp threads continue T-… -ox \"msg\"` (https://ampcode.com/docs/cli/spawning-orbs). No first-party driving of Claude Code/Codex etc. documented.",
   "checked": "2026-09-29"
  },
  "ingress_rules": {
   "value": true,
   "source": "https://ampcode.com/docs/orbs/portals",
   "quote": "Portals are authenticated URLs that expose web servers running inside an orb ... By default, only people who can view the thread can access its portals. ... To share a portal with anyone, open **Portal Options**, select **Make Public**, and choose 1 hour, 3 hours, 1 day, or 7 days.",
   "note": "Private-by-default authenticated portals per port, time-limited public links; proxy injects X-Amp-Authenticated / user identity headers. Services declared in .amp/services.yaml choose which ports get portals.",
   "checked": "2026-09-29"
  },
  "guest_firewall": {
   "value": true,
   "source": null,
   "quote": null,
   "note": "Default orbs are E2B microVMs ('E2B microVM orbs can expose only a link-local IPv4 interface', /docs/orbs/customizing) with sudo and systemd; own kernel so nftables/iptables should work. Not documented.",
   "checked": "2026-09-29",
   "derived": true
  },
  "secret_proxy": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/handling-secrets",
   "quote": "New orbs receive the current values when they start. To refresh a running orb, run this command from the orb's Terminal: amp orb restart-processes ... Amp waits for the current command to finish. It then reloads the values and restarts the executor and managed services.",
   "note": "Secrets are workspace/project/personal env vars delivered into the orb. Alternative is first-party OIDC workload identity (`amp orb id-token`, short-lived tokens for GCP/AWS/Tailscale), which avoids long-lived keys but the token still enters the orb. The 'oauth2-proxy' mention in the Secrets of the Orb post is a self-run suggestion, not a first-party proxy. Secret redaction only hides values from the LLM/transcripts. The Amp agent's own model access goes through Amp's service (not a general secret proxy).",
   "checked": "2026-09-29"
  },
  "volume_attach": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "Orbs support any Linux FUSE file system. You can mount external storage when you want to share volumes across orbs or increase the storage available to an orb beyond its maximum.",
   "note": "Every size has a fixed 60 GB disk; the documented way to extend is third-party Archil (FUSE), not a first-party volume product.",
   "checked": "2026-09-29"
  },
  "volume_shared": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "If several orbs will mount the same disk at once, read Archil's [shared disk guidance](https://docs.archil.com/concepts/shared-disks) before adding `--shared`.",
   "note": "Shared read-write storage across orbs only via third-party Archil (user's own account/secret), not first-party.",
   "checked": "2026-09-29"
  },
  "isolation": {
   "value": "firecracker",
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "Amp's default E2B orbs currently run in Google Cloud us-west1... E2B microVM orbs can expose only a link-local IPv4 interface.",
   "note": "Amp's security page states 'e2b provides ephemeral compute instances for Amp orbs'; E2B's compute product is Firecracker-based microVMs.",
   "checked": "2026-09-30"
  },
  "image_oci": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "Add an executable .agents/setup shell script at the repository root. Use it to install the dependencies and software needed in every orb... Orbs run Debian 12 and include common development tools",
   "note": "not offered: orbs always start from Amp's Debian 12 base image plus a repository setup script/snapshot; no documented way to boot an orb from a customer-supplied Docker/OCI image.",
   "checked": "2026-09-30"
  },
  "nested_virt": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "E2B microVM orbs can expose only a link-local IPv4 interface.",
   "note": "derived: orbs run as E2B/Firecracker microVMs; nested KVM inside a microVM is not documented and is not typically exposed by this class of sandbox.",
   "checked": "2026-09-30"
  },
  "computer_use": {
   "value": true,
   "source": "https://ampcode.com/docs/orbs/desktop",
   "quote": "You can also try computer use in the orb desktop, but this is early and unsupported.",
   "note": "Available but explicitly called early/unsupported by Amp.",
   "checked": "2026-09-30"
  },
  "anti_bot": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/desktop",
   "quote": "Open the Desktop tab in an orb thread to use a high-resolution, interactive Linux desktop environment running in the orb.",
   "note": "not offered: outside the product's scope. Orbs give agents a real Chrome/desktop to drive, with no documented stealth/fingerprint-evasion features against bot detection.",
   "checked": "2026-09-30"
  },
  "captcha_solving": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/desktop",
   "quote": "use the window yourself when Amp asks you to take over, for example to sign in or solve a CAPTCHA",
   "note": "Docs explicitly describe a human taking over to solve CAPTCHAs; there is no built-in automated CAPTCHA-solving.",
   "checked": "2026-09-30"
  },
  "egress_ip_type": {
   "value": "datacenter",
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "Amp's default E2B orbs currently run in Google Cloud us-west1",
   "note": "derived: orbs run as GCP-hosted E2B compute instances; no residential/mobile egress product is documented, so outbound traffic is ordinary cloud-datacenter IP space.",
   "checked": "2026-09-30"
  },
  "ssh": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs",
   "quote": "Open the Terminal pane to get a shell inside the orb. The terminal and the agent use the same filesystem and working copy... The terminal runs in a shared tmux session.",
   "note": "not offered: shell access is via the web/app Terminal pane (tmux) or the shared `.agents` hooks; no documented direct SSH endpoint into an orb.",
   "checked": "2026-09-30"
  },
  "fork": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "A snapshot is a saved copy of a prepared orb. It contains the repository and anything changed by .agents/setup... Amp uses snapshots so every new thread does not need to repeat the same setup work.",
   "note": "not offered: snapshots are automatic, per-project/per-size filesystem caches used only to speed up starting a *new* orb; there is no documented API/UI action to clone/fork an existing orb into new independent copies.",
   "checked": "2026-09-30"
  },
  "fork_running": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "Amp can reuse a matching project snapshot for up to 72 hours.",
   "note": "not offered: no fork feature at all is documented (see fork), so cloning a running orb without stopping it is not offered either.",
   "checked": "2026-09-30"
  },
  "memory_snapshot_fork": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "A snapshot is a saved copy of a prepared orb. It contains the repository and anything changed by .agents/setup, such as installed software.",
   "note": "not offered: documented snapshots are filesystem-only (repo + installed software) project caches, not user-triggered forks, and Amp explicitly stops any processes left running before saving one, so running state is not carried into new instances.",
   "checked": "2026-09-30"
  },
  "live_resize": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/sizes-and-costs",
   "quote": "Select a size in the new-thread dialog on the web when one task needs more or less compute than usual... The default applies to new threads. Changing it does not resize an orb that is already running.",
   "note": "Docs state directly that changing the size setting does not resize an orb that is already running; you must start a new orb/thread at a different size.",
   "checked": "2026-09-30"
  },
  "own_agent_api": {
   "value": false,
   "source": "https://ampcode.com/docs/sdk",
   "quote": "The Amp SDK allows you to programmatically use the Amp agent in your TypeScript or Python programs.",
   "note": "not offered: Amp's SDK/API drives Amp's own coding agent (a coding harness, already captured by harness_api), not a separate browser/computer-use/research task agent. Orb 'computer use' is an early, unsupported chat-driven feature, not a distinct first-party agent API.",
   "checked": "2026-09-30"
  },
  "mcp_server": {
   "value": false,
   "source": "https://ampcode.com/docs/sdk",
   "quote": "MCP Integration: specify which MCP servers are available for a given session... const mcpConfig: MCPConfig = { playwright: { command: 'npx', args: ['-y', '@playwright/mcp@latest', '--headless'] }, ... }",
   "note": "not offered: Amp is an MCP *client* that lets you plug external MCP servers into a thread/orb; there is no documented first-party MCP server that Amp ships for controlling orbs.",
   "checked": "2026-09-30"
  },
  "public_ipv4": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "E2B microVM orbs can expose only a link-local IPv4 interface.",
   "note": "Inbound access is only via Amp's authenticated Portal proxy (onamp.dev subdomains), not a public IPv4 address on the orb.",
   "checked": "2026-09-30"
  },
  "egress_allowlist": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "if ! command -v shellcheck >/dev/null 2>&1; then sudo apt-get update; sudo apt-get install -y shellcheck; fi",
   "note": "not offered: setup docs show orbs freely reaching the public internet (apt-get, curl installers) with no documented allow/deny-list or no-internet mode for outbound traffic.",
   "checked": "2026-09-30"
  },
  "egress_http_rules": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "Orbs run Debian 12 and include common development tools",
   "note": "not offered: no documentation of HTTP method/path-level egress rules; outbound network access is unrestricted general Debian networking.",
   "checked": "2026-09-30"
  },
  "static_egress_ip": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "E2B microVM orbs can expose only a link-local IPv4 interface.",
   "note": "not offered: no fixed/static outbound IP is documented for orbs; the only networking address feature described is the link-local internal interface plus the Portal proxy for inbound.",
   "checked": "2026-09-30"
  },
  "gpu": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/sizes-and-costs",
   "quote": "Size CPUs Memory Standard price a1.tiny 1 2 GB $0.08/hour ... a1.3xlarge 16 44 GB $2.13/hour",
   "note": "not offered: outside the product's scope. Every documented orb size is CPU/RAM only; no GPU size or GPU option is listed.",
   "checked": "2026-09-30"
  },
  "windows": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "Orbs run Debian 12 and include common development tools",
   "note": "not offered: outside the product's scope. Orb machines are Linux (Debian 12) only; Windows is not an orb OS option.",
   "checked": "2026-09-30"
  },
  "macos": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "Orbs run Debian 12 and include common development tools",
   "note": "not offered: outside the product's scope for hosted orb compute. macOS only appears via 'Use Your Mac as a Runner', where the customer's own Mac becomes a runner — not a machine Amp provides.",
   "checked": "2026-09-30"
  },
  "byoc": {
   "value": false,
   "source": "https://ampcode.com/security",
   "quote": "Amp doesn't offer self-hosted deployments, but it can use your own API keys for certain model providers.",
   "note": "Amp explicitly does not offer self-hosted/BYOC deployments; orbs run only on Amp's own GCP/E2B infrastructure.",
   "checked": "2026-09-30"
  },
  "open_source": {
   "value": false,
   "source": "https://ampcode.com/security",
   "quote": "Amp Server: A multi-tenant cloud service at ampcode.com, hosted on Google Cloud Platform... Amp doesn't offer self-hosted deployments",
   "note": "not offered: outside the product's scope. Amp is described throughout as a closed, multi-tenant hosted service with no self-host option; no OSI license is named for the core product.",
   "checked": "2026-09-30"
  },
  "max_session_h": {
   "value": "none",
   "source": "https://ampcode.com/docs/orbs/sizes-and-costs",
   "quote": "These are idle timeouts, not a limit on how long an orb can run. An orb keeps running for as long as the agent has work to do, and you are only billed while it runs.",
   "note": "No maximum session length is documented; only idle-pause timeouts (5 min after agent work ends / 20 min after last interaction) apply.",
   "checked": "2026-09-30"
  },
  "eu_data_residency": {
   "value": false,
   "source": "https://ampcode.com/security",
   "quote": "Google Cloud Platform (GCP) Sees & stores partial code data Our primary infrastructure is hosted on Google Cloud Platform in the US. This infrastructure serves ampcode.com, including storing user and thread data ... e2b Sees code data when using orbs e2b provides ephemeral compute instances for Amp orbs.",
   "note": "Security Reference lists every infrastructure/service provider (GCP, Anthropic, OpenAI, Bedrock, Baseten, Fireworks, e2b, Pierre, LiveKit, etc.) as hosted on US-based servers, with only a note that 'We have no infrastructure or service providers based in China' -- no EU region is offered or mentioned. Enterprise pricing page mentions only generic 'regional endpoints' for bring-your-own-key model providers, not EU data residency for Amp's own storage/orb compute. Orb regions elsewhere documented as GCP us-west1. False confirmed with an explicit official source (previously missing).",
   "checked": "2026-09-30"
  },
  "arm64": {
   "value": false,
   "source": "https://ampcode.com/docs/orbs/sizes-and-costs",
   "quote": "Size CPUs Memory Standard price a1.tiny 1 2 GB $0.08/hour ... a1.3xlarge 16 44 GB $2.13/hour",
   "note": "not offered: no ARM/architecture option is mentioned anywhere in Amp's orb docs (sizes, customizing, security). Orbs run as GCP-hosted e2b Firecracker microVMs (per /docs/orbs/customizing and /security), which are x86_64-only; sizes differ only by vCPU/RAM count, never by chip architecture, and no ARM machine type is offered.",
   "checked": "2026-09-30"
  },
  "hipaa": {
   "value": false,
   "source": "https://ampcode.com/security",
   "quote": "Amp is SOC 2 Type II certified, and we perform annual pentesting of our entire stack, covering clients, backend, and infrastructure. Visit our Security Trust Portal to request a copy of our reports.",
   "note": "not offered: the Security Reference page's 'Certifications & Third-Party Assessments' section names only SOC 2 Type II and pentesting; there is no mention of HIPAA, BAA, or healthcare-data handling anywhere on this page, the pricing page, or the Trust Center gate. Searches of ampcode.com for 'hipaa'/'baa' returned nothing.",
   "checked": "2026-09-30"
  },
  "usage_api": {
   "value": false,
   "source": "https://ampcode.com/docs/markdown/pricing",
   "quote": "You can buy credits and check your balance in user settings, workspace settings, or by running `amp usage`. For detailed cost information about a thread, click the $ price on the right sidebar from any thread's page.",
   "note": "granularity: account-only; cost: no; Amp bills orbs by running time at fixed hourly rates per size (per-minute granularity). While the SDK includes Usage objects for per-call token counts and there's an `amp usage` CLI command to check account balance, there is no documented REST API endpoint or SDK method to programmatically access billable usage metrics for individual sandboxes (orbs), or filtered by tag/label/project. Usage visibility is limited to: (1) web dashboard price sidebar for individual threads (UI only); (2) `amp usage` CLI command showing account-wide balance; (3) SDK Usage structs for API token counts only. No per-orb, per-tag, or per-project usage retrieval API is documented. Enterprise section does not mention usage/billing APIs.",
   "confidence": "high",
   "checked": "2026-10-01"
  },
  "self_host": {
   "value": false,
   "source": "https://ampcode.com/security",
   "quote": "Amp doesn’t offer self-hosted deployments, but it can use your own API keys for certain model providers.",
   "note": "not offered: Amp states it has no self-hosted deployment. Runners (https://ampcode.com/docs/cli/runners: \"A runner runs on a machine you already have. You start amp --no-tui on it, and Amp creates threads there\") run threads on your own machine, but the control plane stays Amp's hosted service, and runner compute is not orb compute priced here.",
   "checked": "2026-10-14"
  },
  "docker_inside": {
   "value": true,
   "source": "https://ampcode.com/docs/orbs/customizing",
   "quote": "Docker is not installed by default. Install it from .agents/setup , then run the daemon as a supervised orb service. Do not start the daemon from the setup script.",
   "note": "Docker works inside orbs but is not preinstalled: install docker-ce via the .agents/setup script (sudo) and run dockerd as a managed orb service; the docs give the install script.",
   "checked": "2026-10-14"
  }
 },
 "locations": [
  {
   "country": "US",
   "state": "OR",
   "city": "The Dalles",
   "provider_region": "us-west1",
   "self_serve": true,
   "choosable": false
  }
 ],
 "locations_source": "https://ampcode.com/docs/orbs/customizing",
 "locations_quote": "Amp's default E2B orbs currently run in Google Cloud us-west1",
 "locations_checked": "2026-10-01"
}