{
 "features_resolved": {
  "snapshot_any": true,
  "snapshot_mem": true,
  "fork": true,
  "pause_resume": true,
  "persistent_disk": true,
  "whole_disk": true,
  "persist_scope": true,
  "volumes": true,
  "auto_stop_idle": true,
  "long_sessions": true,
  "custom_image": true,
  "image_snapshot": true,
  "image_oci": true,
  "vm_isolation": true,
  "docker_inside": true,
  "nested_virt": false,
  "root": null,
  "systemd": null,
  "browser": false,
  "desktop": false,
  "computer_use": false,
  "code_interpreter": null,
  "browser_control": null,
  "desktop_control": null,
  "browser_and_desktop": false,
  "anti_bot": false,
  "captcha_solving": false,
  "residential_ip": false,
  "agent_harnesses": true,
  "ssh": false,
  "public_ipv4": false,
  "inbound_https": true,
  "custom_domain": null,
  "raw_tcp_inbound": null,
  "egress_allowlist": true,
  "open_internet": true,
  "static_egress_ip": false,
  "private_network": null,
  "self_host": true,
  "byoc": true,
  "open_source": true,
  "soc2": false,
  "hipaa": false,
  "sso": true,
  "gpu": false,
  "arm64": true,
  "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": true,
  "memory_snapshot_fork": true,
  "webhooks": null,
  "scheduled_wakeups": null,
  "audit_logs": null,
  "eu_data_residency": false,
  "zero_data_retention": null,
  "scoped_api_keys": null,
  "spend_limits": true,
  "mcp_server": true,
  "usage_api": true,
  "snapshot_auto": false,
  "snapshot_on_demand": true,
  "harness_api": false,
  "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": "smol-machines",
  "checked": "2026-09-30",
  "company": "Smol Machines",
  "ownership": {
   "value": "independent",
   "parent": null,
   "source": "https://www.ycombinator.com/companies/smol-machines",
   "quote": "Ship software faster with portable, self contained virtual machines. Founded in 2026 by BinBin He, smol machines has 1 employees based in San Francisco."
  },
  "stage": {
   "value": "pre-seed",
   "source": "https://www.ycombinator.com/companies/smol-machines",
   "quote": "year_founded: 2026, team_size: 1, founder BinBin He, title Founder/CEO, previously at AWS",
   "confidence": "medium",
   "note": "Company is a current-batch (Spring 2026) YC company with a single founder and 1 employee; no priced round beyond the YC standard deal has been disclosed, so the last-priced-round stage is inferred as pre-seed (standard for an active-batch YC company), not confirmed."
  },
  "accelerators": [
   {
    "name": "Y Combinator",
    "batch": "Spring 2026",
    "source": "https://www.ycombinator.com/companies/smol-machines",
    "quote": "\"batch\":\"P26\",\"batch_name\":\"Spring 2026\" ... \"ycdc_status\":\"Active\"",
    "confidence": "high",
    "via": "research"
   }
  ],
  "total_funding_usd": {
   "value": null,
   "status": "unknown"
  },
  "last_round": {
   "type": "unknown",
   "amount_usd": null,
   "date": null,
   "leads": [],
   "status": "unknown",
   "source": "https://www.ycombinator.com/companies/smol-machines",
   "quote": ""
  },
  "investors": [
   "Y Combinator"
  ],
  "portfolio_listings": [],
  "revenue": {
   "value": null,
   "status": "unknown"
  },
  "employees": {
   "value": 1,
   "source": "https://www.ycombinator.com/companies/smol-machines"
  },
  "note": "Verified the hint: YC directory entry for 'smol machines' (slug smol-machines, batch P26 / Spring 2026, status Active) lists website https://smolmachines.com/ — same domain as the provider card (smolmachines.com), confirming this is the same company. Solo founder BinBin He (ex-AWS, worked on ECS/Fargate/Firecracker), San Francisco, founded 2026, team size 1. No funding amount, investors beyond YC, or revenue/ARR are publicly disclosed; this is an extremely early-stage, current-YC-batch company with no independent press coverage found."
 },
 "id": "smol-machines",
 "name": "smol machines",
 "url": "https://smolmachines.com/pricing",
 "category": "agent-sandbox",
 "isolation": "vm",
 "modes": [
  {
   "key": "active-plus-base",
   "label": "Active usage plus running-instance fee",
   "flags": [],
   "os": [
    "linux"
   ],
   "regions": null,
   "gpu_only": false,
   "features": {
    "isolation": "vm"
   },
   "pricing": "resource",
   "vcpu_h": 0.05,
   "ram_gib_h": 0.0162,
   "cpu_basis": "active",
   "ram_basis": "active",
   "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": null,
   "pool_tiers": null,
   "requires_always_on": false,
   "always_on_month_per_instance": null,
   "commit_note": null,
   "min_billed_seconds": 60,
   "granularity_s": 1,
   "start_fee": null,
   "boot_overhead_s": null,
   "multiplier": 1,
   "windows_vcpu_h": null,
   "gpu": null,
   "note": "Not representable: $0.04/machine-h plus $0.05/active-vCPU-h + $0.0162/active-RSS-GB-h.",
   "instance_h (engine field request)": 0.04,
   "cpu_class": "shared"
  }
 ],
 "storage": {
  "included_disk_gib": 0,
  "disk_gib_month": 0.073,
  "disk_billed_when_stopped": true,
  "snapshot_gib_month": null,
  "paused_ram_billed": false
 },
 "network": {
  "egress_free_gib": null,
  "egress_gib": 0.05,
  "ipv4_month": null,
  "ipv4_available": null,
  "internet": {
   "default": "configurable",
   "evidence": [
    {
     "quote": "Networking is disabled by default so a workload cannot reach the internet or other network services unless you allow it.",
     "url": "https://smolmachines.com/faq"
    },
    {
     "quote": "Where possible, use the egress allowlist to restrict access to the hosts or networks the workload actually needs.",
     "url": "https://smolmachines.com/faq"
    },
    {
     "quote": "Network egress per GB out $0.05",
     "url": "https://smolmachines.com/pricing"
    }
   ]
  }
 },
 "plans": [
  {
   "name": "Standard",
   "fee": 0,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 0,
   "per_seat": null,
   "concurrency": 20,
   "max_session_h": null,
   "max_vcpu": 8,
   "max_ram_gib": 16,
   "sizes_allowed": null,
   "note": "20 machines; up to 8 vCPU / 16 GB per machine; 'idle apps scale to zero and wake on the next request' (always-on apps only on Pro/Startup). No card. Running cap 20: \"concurrency limit reached: your Standard plan allows 20 machines running at once\" (api-reference, 2026-10-14)."
  },
  {
   "name": "Pro",
   "fee": 20,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 0,
   "per_seat": null,
   "concurrency": 100,
   "max_session_h": null,
   "max_vcpu": 16,
   "max_ram_gib": 24,
   "sizes_allowed": null,
   "note": "100 machines; up to 16 vCPU / 24 GB / 200 GB disk per machine; always-on apps allowed. $20/month fee is added on top of usage (not credit). Running cap taken as 100: the pricing page publishes only the held-machine count, which bounds running machines (stopped ones count too); Standard's published running cap equals its machine count."
  },
  {
   "name": "Startup",
   "fee": 150,
   "flags": [],
   "fee_is_credit": false,
   "included_usd": 0,
   "per_seat": null,
   "concurrency": 1000,
   "max_session_h": null,
   "max_vcpu": 32,
   "max_ram_gib": 32,
   "sizes_allowed": null,
   "note": "1,000 machines; up to 32 vCPU / 32 GB / 200 GB disk per machine; always-on apps, priority support. $150/month fee is added on top of usage (not credit). Running cap taken as 1,000: the pricing page publishes only the held-machine count, which bounds running machines (stopped ones count too); Standard's published running cap equals its machine count."
  },
  {
   "name": "Enterprise",
   "fee": null,
   "flags": [
    "sales"
   ],
   "fee_is_credit": false,
   "included_usd": null,
   "per_seat": null,
   "concurrency": null,
   "max_session_h": null,
   "max_vcpu": null,
   "max_ram_gib": null,
   "sizes_allowed": null,
   "note": ""
  }
 ],
 "free": {
  "monthly_credit": null,
  "one_time_credit": 100
 },
 "features": {
  "linux": true,
  "windows": false,
  "macos": false,
  "arm64": true,
  "gpu": false,
  "snapshot": "mem",
  "pause_resume": true,
  "fork": true,
  "persistent_disk": true,
  "volumes": true,
  "auto_stop_idle": true,
  "max_session_h": null,
  "custom_image": true,
  "docker_inside": true,
  "nested_virt": false,
  "root": null,
  "systemd": null,
  "browser": false,
  "desktop": false,
  "computer_use": false,
  "code_interpreter": null,
  "agent_harnesses": true,
  "ssh": false,
  "public_ipv4": false,
  "inbound_https": true,
  "custom_domain": null,
  "raw_tcp_inbound": null,
  "egress_allowlist": true,
  "static_egress_ip": false,
  "private_network": null,
  "self_host": true,
  "byoc": true,
  "open_source": true,
  "soc2": false,
  "hipaa": false,
  "sso": true,
  "gpu_types": [],
  "regions": null,
  "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": true,
  "memory_snapshot_fork": true,
  "webhooks": null,
  "scheduled_wakeups": null,
  "audit_logs": null,
  "eu_data_residency": false,
  "zero_data_retention": null,
  "scoped_api_keys": null,
  "spend_limits": true,
  "mcp_server": true,
  "isolation": "vm",
  "image_oci": true,
  "snapshot_auto": false,
  "snapshot_on_demand": true,
  "harness_api": false,
  "egress_allowlist_level": "both",
  "ingress_rules": true,
  "secret_proxy": false,
  "volume_attach": false,
  "volume_shared": false,
  "anti_bot": false,
  "captcha_solving": false,
  "egress_ip_type": "datacenter",
  "own_agent_api": false,
  "guest_firewall": true,
  "max_session_unlimited": true,
  "open_internet": true,
  "usage_api": true,
  "persist_scope": "whole"
 },
 "perf": {
  "cpu_runs_s": null,
  "cold_start_ms": null,
  "burst_tti_ms": null,
  "dax_s": null
 },
 "caveats": [
  "Bills a $0.04 per running-machine-hour base PLUS $0.05 per active vCPU-hour and $0.0162 per active RSS GB-hour; base is not reserved resources.",
  "One-minute minimum initially at requested size; longer lifetimes use sampled CPU/RSS and second-level metering. Fork fanout pays minimum once, not per clone.",
  "Engine cannot express per-running-instance base fee or initial allocated-resource minimum with later active usage. Card deliberately has null CPU/RAM rates to prevent underpricing. Native rates are retained in provider extras.",
  "Disk is used bytes at $0.0001/GB-hour, including stopped state; scale-to-zero removes base and CPU/RAM. Beta discount: 10% only on spend above $2,000/month; threshold may change.",
  "Pro/Startup are pure fees, not credits. Machine caps (Standard 20, Pro 100, Startup 1,000) count stopped machines too until deleted; running-at-once caps are modelled as the same numbers (Standard's 20 is published). Stopped-but-kept machines beyond the cap are not modelled.",
  "Null values mean unknown, not free/unlimited. No model-token cost, tax or unverified ancillary charge included.",
  "Native browser/device/task/credit prices with unknown CPU/RAM are deliberately non-priceable. Check regime before interpreting any partial resource estimate.",
  "Re-checked 2026-09-28 on smolmachines.com/pricing: rates unchanged ($0.04/machine-h base, 1-min minimum; $0.05/active vCPU-h; $0.0162/active RSS GB-h; $0.0001/GB-h disk; $0.05/GB egress). Still unpriced: the engine has no per-running-instance hourly fee field, and folding the $0.04 base into vcpu_h/ram_gib_h would misprice every size. Per-machine limits: Standard 8 vCPU/16 GB, Pro 16/24, Startup 32/32.",
  "Beta volume discount: 10% off spend above $2,000/month ('threshold and rate may still change'). Prepaid credits (top-ups) expire 12 months after purchase and are non-refundable after 14 days; rates may change on 14 days' notice.",
  "Credential substitution (secret proxy for HTTPS headers) exists only in open-source smolvm run locally or self-hosted; smol cloud machines get plaintext env secrets. Card features describe the cloud product (checked 2026-10-14)."
 ],
 "sources": [
  "https://www.ycombinator.com/companies/smol-machines",
  "https://smolmachines.com/pricing",
  "https://smolmachines.com/faq",
  "https://smolmachines.com/docs/",
  "https://smolmachines.com/",
  "https://smolmachines.com/llms.txt",
  "https://smolmachines.com/docs/cloud/lifecycle-storage-networking",
  "https://smolmachines.com/docs/cloud/api-reference",
  "https://smolmachines.com/pricing.md",
  "https://smolmachines.com/openapi.json",
  "https://smolmachines.com/docs/introduction/concepts/isolation-networking-credentials"
 ],
 "fleet": {
  "default_max_instances": 20,
  "default_max_vcpu": null,
  "default_max_gpus": null,
  "raise": "self-serve",
  "raise_time_days": null,
  "verification": "$100 introductory credits without card; paid subscriptions plus usage.",
  "tiers": "Standard 20 machines; Pro ($20/month) 100; Startup ($150/month) 1,000; Enterprise custom.",
  "notes": "Plan limits (api-reference): machines held, counted across every state (\"a stopped machine still occupies a slot until it is deleted\"), and machines running at once (\"counted over started and creating\"); Standard's running cap is 20 (\"your Standard plan allows 20 machines running at once\"). 10 fits Standard, 50 Pro, 300/1,000 Startup, subject to available capacity. Public health endpoint reported a small cluster (nodesTotal 4, nodesReady 4 on 2026-09-29).",
  "sources": [
   "https://smolmachines.com/pricing",
   "https://smolmachines.com/docs/cloud/api-reference",
   "https://smolmachines.com/pricing.md"
  ],
  "researched": "2026-10-14"
 },
 "audit_2026_09_29": {
  "applied": 18,
  "source": "checked against the provider's live pricing and docs pages",
  "reviewed": 8
 },
 "feature_evidence": {
  "snapshot_auto": {
   "value": false,
   "source": "https://smolmachines.com/docs/cloud/lifecycle-storage-networking",
   "quote": "They keep their contents across exec calls while the machine runs, and are empty again after a stop and start — including a stop triggered by autoStopSeconds.",
   "note": "Stop (manual or autoStopSeconds idle stop) preserves only the machine filesystem (persistent_disk); memory-backed paths and processes are lost. Docs also: 'Machine snapshots are not implemented in the cloud API: the snapshot routes return 501.'",
   "checked": "2026-09-29"
  },
  "snapshot_on_demand": {
   "value": true,
   "source": "https://smolmachines.com/docs/cloud/lifecycle-storage-networking",
   "quote": "Checkpoints capture a running machine, guest RAM and processes included, into durable cloud storage, and can be pulled down as a .smolcheckpoint artifact.",
   "note": "Memory included; machine must be started branchable. 'restore creates and starts a new machine from the checkpoint' (can boot new machines). Also live copy-on-write branch (fork) of running machines with RAM, and disk-only export to .smolmachine pack. Checkpoint refuses machines with host mounts, remote volumes, secret references, GPU state etc.",
   "checked": "2026-09-29"
  },
  "harness_api": {
   "value": false,
   "source": "https://smolmachines.com/openapi.json",
   "quote": null,
   "note": "Cloud API routes enumerated in OpenAPI: machines lifecycle, exec, sessions (shell cwd/env), files, /code (Python/JS), events, volumes, pools, apps - no agent-harness routes. Registry offers a prebuilt 'codex coding-agent sandbox' (agent_harnesses, not harness_api).",
   "checked": "2026-09-29"
  },
  "egress_allowlist": {
   "value": true,
   "source": "https://smolmachines.com/docs/cloud/lifecycle-storage-networking",
   "quote": "Allow only selected hosts and CIDR ranges:",
   "note": "network.mode blocked | open | allowCidrs with hosts[] and cidrs[]; cloud default is open if network omitted. Concepts page: 'Egress can be restricted with hostname and CIDR allowlists. A platform policy also blocks selected sensitive address ranges. There is no first-class deny-list configuration in the current shipped interface.' Published OpenAPI MachineNetwork schema lists only cidrs (hosts documented in guide).",
   "checked": "2026-09-29",
   "level": "both"
  },
  "ingress_rules": {
   "value": true,
   "source": "https://smolmachines.com/docs/cloud/lifecycle-storage-networking",
   "quote": "Set public: true only when the service should be reachable without the caller’s API authorization.",
   "note": "Up to 16 published guest ports per machine (\"Each cloud machine can publish up to 16 guest ports.\"); public:false reaches ports only via the API-token-authenticated connect route /v1/machines/{id}/connect/{port}/ (WebSocket too); scoped share links also mentioned in API reference. No IP allowlist documented.",
   "checked": "2026-10-14"
  },
  "secret_proxy": {
   "value": false,
   "was": "any-http",
   "source": "https://smolmachines.com/docs/introduction/concepts/isolation-networking-credentials",
   "quote": "Secret injection resolves a host environment variable or file and places the value inside the guest. The value is plaintext from the guest’s perspective. Code running in the machine can read it.",
   "note": "Credential substitution (placeholder swapped on HTTPS headers to allowed hosts) is documented only for local/self-hosted smolvm (`smolvm machine create --credential ...`). The cloud CreateMachineRequest (https://smolmachines.com/openapi.json) has no credential field (properties: autoStopSeconds, env, ephemeral, mounts, name, network, resources, source, ttlSeconds, workdir); the only credential route is /v1/nodes/{id}/credential, a node credential. Priced smol cloud: no secret proxy; secrets are plaintext env.",
   "checked": "2026-10-14"
  },
  "volume_attach": {
   "value": false,
   "source": "https://smolmachines.com/docs/cloud/api-reference",
   "quote": "it still lists volume routes; those are not a supported part of the API and a machine created with a mounts field comes up without the storage.",
   "note": "Cloud: only the machine's own disk (up to 16 TiB). Local smolvm supports host-directory mounts and S3 bucket mounts (--volume s3://bucket:/path[:ro]).",
   "checked": "2026-09-29"
  },
  "volume_shared": {
   "value": false,
   "source": "https://smolmachines.com/docs/cloud/api-reference",
   "quote": "those are not a supported part of the API and a machine created with a mounts field comes up without the storage.",
   "note": "No shared volumes in cloud. Local/self-hosted smolvm: 'A remote volume mounts S3-compatible object storage' via the machine agent (FUSE, creds from guest env AWS_*), rw or :ro - several local machines could mount one bucket, but not a cloud feature.",
   "checked": "2026-09-29"
  },
  "nested_virt": {
   "value": false,
   "source": "https://smolmachines.com/docs/introduction/concepts/gpu",
   "quote": "Hosted cloud does not provide GPU machines... The cloud create API has no GPU resource fields, and the SDK does not send resources.gpu, resources.gpuVramMib, or resources.cuda to that backend — setting them for a cloud machine has no effect.",
   "note": "The cloud CreateMachineRequest schema (openapi.json) only exposes resources.cpus/memoryMb/diskGb, network, source, env, autoStop/ttl — no nested-virtualization field. --nested (running KVM/QEMU inside a machine) is documented only as a local smolvm host flag requiring host nested-KVM/Apple M3+; not exposed on the multi-tenant cloud API. Derived absence, not an explicit denial.",
   "checked": "2026-09-30"
  },
  "desktop": {
   "value": false,
   "source": "https://smolmachines.com/docs/guides/headless-browser-computer-use",
   "quote": "SMOLVM_DISPLAY=1280x800 SMOLVM_VNC=127.0.0.1:5900 ... Both variables are read by the process that boots the machine, so exporting them in the shell or prefixing the command both work.",
   "note": "The VNC/RFB desktop stream is enabled via environment variables passed to the local smolvm boot process, not a field in the smol cloud CreateMachineRequest (which only takes source/resources/network/env/mounts/autoStop/ttl/workdir). Not exposed as a cloud API feature.",
   "checked": "2026-09-30"
  },
  "browser": {
   "value": false,
   "source": "https://smolmachines.com/docs/guides/headless-browser-computer-use",
   "quote": "Put Chromium in a Smolfile entrypoint so it is running when the source machine is frozen... An agent inside the guest can connect to Chromium's DevTools endpoint on 127.0.0.1:9222.",
   "note": "The guide shows how to run your own Chromium image inside a machine; smol machines does not itself ship/manage a preinstalled browser or a browser-control API. The registry catalog (20 official images) has no browser template.",
   "checked": "2026-09-30"
  },
  "computer_use": {
   "value": false,
   "source": "https://smolmachines.com/openapi.json",
   "quote": "paths: /v1/machines, /v1/machines/{id}/exec, /v1/machines/{id}/sessions, /v1/machines/{id}/files, /v1/machines/{id}/code, /v1/machines/{id}/events ...",
   "note": "No screenshot/click computer-use endpoint in the cloud API. The VNC desktop stream described in the headless-browser guide is a local-smolvm host-process feature (SMOLVM_DISPLAY/SMOLVM_VNC env vars), not a shipped cloud API capability.",
   "checked": "2026-09-30"
  },
  "anti_bot": {
   "value": false,
   "source": "https://smolmachines.com/llms.txt",
   "quote": "Documentation for Smol Machines — isolated Linux microVMs (\"machines\"). ... Reach for smol machines when a workload needs a real Linux VM boundary — its own kernel, not a shared one.",
   "note": "not offered: outside the product's scope — smol machines is a generic microVM/sandbox runtime, not a browser stealth/anti-fingerprinting product.",
   "checked": "2026-09-30"
  },
  "captcha_solving": {
   "value": false,
   "source": "https://smolmachines.com/llms.txt",
   "quote": "Documentation for Smol Machines — isolated Linux microVMs (\"machines\"). ... Reach for smol machines when a workload needs a real Linux VM boundary — its own kernel, not a shared one.",
   "note": "not offered: outside the product's scope — no CAPTCHA-solving feature is documented anywhere on the site/docs/API.",
   "checked": "2026-09-30"
  },
  "egress_ip_type": {
   "value": "datacenter",
   "source": "https://smolmachines.com/docs/cloud/lifecycle-storage-networking",
   "quote": "A cloud machine created without a network block gets open outbound access by default; set network explicitly when egress policy matters.",
   "note": "smol cloud is standard hosted-VM infrastructure; no residential/mobile egress product is mentioned anywhere. Derived as ordinary datacenter egress.",
   "checked": "2026-09-30"
  },
  "ssh": {
   "value": false,
   "source": "https://smolmachines.com/docs/cloud/api-reference",
   "quote": "The Cloud API also provides endpoints for: Running Python or JavaScript through /code, Machine events and logs, Per-machine usage and cached images, Sharing a machine through scoped share links, Branching a branchable machine, Exporting a machine to a .smolmachine artifact.",
   "note": "No SSH route is documented for smol cloud; access is via POST /v1/machines/{id}/exec, sessions, files, or the authenticated /connect/{port}/ WebSocket tunnel to a published guest port. SSH-agent forwarding (--ssh-agent) is a separate, local-smolvm-only flag for outbound git/ssh, not inbound SSH login to the machine.",
   "checked": "2026-09-30"
  },
  "live_resize": {
   "value": false,
   "source": "https://smolmachines.com/docs/local/machine-lifecycle-cli-reference",
   "quote": "smolvm machine stop --name dev\nsmolvm machine update --name dev --cpus 6 --mem 12288\nsmolvm machine start --name dev\nmachine update changes configuration for the next start. The machine must be stopped first.",
   "note": "Resizing CPU/RAM requires the machine to be stopped first; not possible on a running machine.",
   "checked": "2026-09-30"
  },
  "agent_harnesses": {
   "value": true,
   "source": "https://smolmachines.com/registry",
   "quote": "codex official Coding-agent sandbox — Node.js, Python, git, ripgrep, and build-essential with the OpenAI Codex CLI (`codex`) pre-installed. Bring your own API key at runtime.",
   "note": "Registry also offers 'harbor' (drives Claude Code, Codex, OpenHands) and a 'pi' template; llms.txt also lists 'codex coding-agent sandbox, harbor, etc.' as pre-built registry environments.",
   "checked": "2026-09-30"
  },
  "own_agent_api": {
   "value": false,
   "source": "https://smolmachines.com/llms.txt",
   "quote": "smol cloud is the hosted service for managed smolvm-based machines... Fast, reliable, persistent cloud VMs that scale with compute need. Most common: deploying agents / agentic processes.",
   "note": "not offered: outside the product's scope — smol machines exposes a generic VM/exec API; it does not offer a first-party API that drives its OWN browser/computer-use/research task agent.",
   "checked": "2026-09-30"
  },
  "mcp_server": {
   "value": true,
   "source": "https://raw.githubusercontent.com/smol-machines/smol-mcp/main/README.md",
   "quote": "An MCP server for smol machines: it gives an AI agent a virtual machine to work in. The agent creates a machine from an OCI image, runs commands in it, reads and writes files, branches it, tails its log and deletes it, all through the tools its client already knows how to call.",
   "note": "First-party repo smol-machines/smol-mcp, supports both local smolvm and smol cloud targets.",
   "checked": "2026-09-30"
  },
  "lang_python": {
   "value": true,
   "source": "https://smolmachines.com/registry",
   "quote": "python official python:3.12-slim — packaged as a smolmachine available: linux/amd64",
   "note": "Also: cloud API has POST /v1/machines/{id}/code for 'Running Python or JavaScript'; SDK is `pip install smolmachines`.",
   "checked": "2026-09-30"
  },
  "lang_node": {
   "value": true,
   "source": "https://smolmachines.com/registry",
   "quote": "node official Node.js 22 runtime (node:22-slim) — run JavaScript/TypeScript, npm packages, and Node tooling in an isolated microVM. available: linux/amd64 linux/arm64",
   "note": "Also: cloud API /code endpoint runs JavaScript; SDK is `npm install smolmachines`.",
   "checked": "2026-09-30"
  },
  "public_ipv4": {
   "value": false,
   "source": "https://smolmachines.com/docs/cloud/lifecycle-storage-networking",
   "quote": "Each cloud machine can publish up to 16 guest ports. A published port is a guest port declaration; use the returned URL or authenticated connect route to reach it.",
   "note": "Machines are reached through a provider-issued URL / authenticated connect route (or public:true HTTPS ingress), not a dedicated public IPv4 address per machine.",
   "checked": "2026-10-14"
  },
  "egress_http_rules": {
   "value": false,
   "source": "https://smolmachines.com/docs/cloud/lifecycle-storage-networking",
   "quote": "Allow only selected hosts and CIDR ranges: { \"network\": { \"mode\": \"allowCidrs\", \"hosts\": [...], \"cidrs\": [...] } }",
   "note": "Egress control is hostname/CIDR-level only; no HTTP method/path-level egress rule is documented.",
   "checked": "2026-09-30"
  },
  "guest_firewall": {
   "value": true,
   "source": "https://smolmachines.com/docs/cloud/lifecycle-storage-networking",
   "quote": "smol cloud exec takes --user, a name from the image or a numeric uid[:gid], which overrides the image's USER for that command: smol cloud exec -n myapp --user 1000:1000 -- id",
   "note": "derived: machines are full microVMs with their own guest kernel (isolation: vm) and root-capable exec, so nftables/iptables inside the guest should work; not directly documented.",
   "checked": "2026-09-30"
  },
  "static_egress_ip": {
   "value": false,
   "source": "https://smolmachines.com/pricing",
   "quote": "plans standard $0 20 machines ... pro $20/month + usage 100 machines ... enterprise custom dedicated nodes and volume rates machine sizes set per contract an SLA, and SSO/SAML",
   "note": "No fixed/static outbound IP offering is mentioned on pricing, FAQ, or docs pages, including the Enterprise tier's listed extras (dedicated nodes, SLA, SSO/SAML).",
   "checked": "2026-09-30"
  },
  "arm64": {
   "value": true,
   "source": "https://smolmachines.com/docs/cloud/registry",
   "quote": "Packed artifacts are architecture-specific. Set optional arch to amd64 or arm64 when you need an explicit placement constraint.",
   "note": "Registry catalog also lists multiple official images available for linux/arm64 (node, python-tools/codex, harbor, claude, pi).",
   "checked": "2026-09-30"
  },
  "byoc": {
   "value": true,
   "source": "https://smolmachines.com/llms.txt",
   "quote": "Custom deployments (designated-location hosts, uncommon management layers): available from Smol Machines on request — not the default self-serve cloud.",
   "note": "Described as a request-based custom/managed deployment to a designated location, distinct from the self-serve multi-tenant cloud; closest documented match to BYOC. Not self-serve, and exact 'in your own cloud account' wording is not used.",
   "checked": "2026-09-30"
  },
  "soc2": {
   "value": false,
   "source": "https://smolmachines.com/pricing",
   "quote": "enterprise custom dedicated nodes and volume rates machine sizes set per contract an SLA, and SSO/SAML",
   "note": "The Enterprise tier explicitly lists its extras (dedicated nodes, custom rates, SLA, SSO/SAML) with no mention of SOC 2; no security/trust/compliance page exists on the site (smolmachines.com/security and /trust both 404). Early-stage (YC S26) company with no published attestation.",
   "checked": "2026-09-30"
  },
  "hipaa": {
   "value": false,
   "source": "https://smolmachines.com/pricing",
   "quote": "enterprise custom dedicated nodes and volume rates machine sizes set per contract an SLA, and SSO/SAML",
   "note": "No HIPAA/BAA mention anywhere in docs, pricing, or FAQ; no security/compliance page exists on the site.",
   "checked": "2026-09-30"
  },
  "eu_data_residency": {
   "value": false,
   "source": "https://smolmachines.com/docs/cloud/api-reference",
   "quote": "CreateMachineRequest properties: autoStopSeconds, env, ephemeral, mounts, name, network, resources, source, ttlSeconds, workdir",
   "note": "No region/location field exists anywhere in the create-machine schema or docs; the product does not document any region selection, so EU data residency cannot be requested.",
   "checked": "2026-09-30"
  },
  "max_session_h": {
   "value": "none",
   "source": "https://smolmachines.com/docs/cloud/lifecycle-storage-networking",
   "quote": "ttlSeconds: hard lifetime limit — the machine is deleted this many seconds after creation regardless of activity, on the same 15-second sweep.",
   "note": "ttlSeconds is an optional, caller-set hard lifetime (no default and no documented provider-imposed maximum); a persistent machine with no ttl/autoStop can be started and left running (start/stop/exec) indefinitely until the caller stops or deletes it, like an always-on VM.",
   "checked": "2026-09-30"
  },
  "gpu": {
   "value": false,
   "source": "https://smolmachines.com/docs/cloud/lifecycle-storage-networking",
   "quote": "Hosted cloud machine resource requests currently expose CPU, memory, and disk fields. They do not expose GPU fields. Local smolvm GPU support does not imply hosted cloud GPU availability.",
   "note": "GPU (Vulkan/CUDA remoting) exists only in local/self-hosted smolvm, not in the priced smol cloud product; cloud has no GPU field at all.",
   "checked": "2026-09-30"
  },
  "windows": {
   "value": false,
   "source": "https://smolmachines.com/llms.txt",
   "quote": "You need Windows or macOS guests. Guests are Linux.",
   "note": "Listed as an explicit 'not the right tool' case in the official docs index; guest OS is Linux only regardless of host platform.",
   "checked": "2026-09-30"
  },
  "macos": {
   "value": false,
   "source": "https://smolmachines.com/llms.txt",
   "quote": "You need Windows or macOS guests. Guests are Linux.",
   "note": "Same official statement rules out macOS guests; macOS is only supported as a host for running smolvm locally, not as a guest OS.",
   "checked": "2026-09-30"
  },
  "cpu_class": {
   "value": {
    "active-plus-base": "shared"
   },
   "source": "https://smolmachines.com/pricing",
   "quote": "Pay for what you use: a small base fee for every hour a machine is running — the isolated slot itself, not reserved vCPU/RAM — plus what your workload actually consumes on top.",
   "note": "Pricing page explicitly says the base fee covers the isolated slot but not reserved vCPU/RAM, and compute is billed per active-vCPU-hour actually consumed (the control plane 'samples each machine's live CPU, memory, and disk continuously'). No dedicated-core guarantee is documented anywhere for the single priced mode (active-plus-base); vCPUs are metered/oversubscribed rather than reserved, so classified as shared.",
   "checked": "2026-09-30"
  },
  "usage_api": {
   "value": true,
   "source": "https://smolmachines.com/docs/cloud/api-reference",
   "quote": "Use `/v1/usage` for usage over a time range and `GET /v1/machines/{id}/usage` for one machine's totals and cost.",
   "note": "granularity: per-sandbox; cost: yes; The API provides GET /v1/machines/{id}/usage endpoint that returns per-machine totals and cost, identified by machine id. Cost is returned in a CostBreakdown object with cpuMicros, memoryMicros, execMicros, and totalMicros fields.",
   "confidence": "high",
   "checked": "2026-10-01"
  },
  "persist_scope": {
   "value": "whole",
   "source": "https://smolmachines.com/docs/cloud/lifecycle-storage-networking",
   "quote": "They keep their contents across exec calls while the machine runs, and are empty again after a stop and start — including a stop triggered by autoStopSeconds.",
   "note": "The whole disk survives a stop, installed packages included.",
   "checked": "2026-10-01"
  },
  "concurrency": {
   "value": {
    "Standard": 20,
    "Pro": 100,
    "Startup": 1000
   },
   "source": "https://smolmachines.com/docs/cloud/api-reference",
   "quote": "How many may run at once — counted over started and creating . ... concurrency limit reached: your Standard plan allows 20 machines running at once; upgrade at https://smolmachines.com/pricing",
   "note": "Three plan ceilings: machines held (\"counted across every state, not just running ones, so a stopped machine still occupies a slot until it is deleted\"), machines running at once, and per-machine size. Pricing (https://smolmachines.com/pricing.md) lists Machines 20 / 100 / 1,000 for standard / pro / startup; only Standard's running cap is stated as a number (20); Pro/Startup set to their held-machine count, which is an upper bound on running.",
   "checked": "2026-10-14"
  }
 },
 "locations": [],
 "locations_source": "https://smolmachines.com/docs/cloud/api-reference",
 "locations_quote": "CreateMachineRequest properties: autoStopSeconds, env, ephemeral, mounts, name, network, resources, source, ttlSeconds, workdir — No region/location field exists",
 "locations_checked": "2026-10-01"
}