{
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "tool": {
    "slug": "freestyle",
    "name": "Freestyle",
    "vendor": "Freestyle Cloud Inc.",
    "vendorUrl": "https://www.freestyle.sh",
    "kind": "http-api",
    "category": "code-sandboxes",
    "summary": "Freestyle runs full Linux virtual machines for AI agents, with pause and resume that keeps memory, snapshots, private networks and domains. Agents drive it through a REST API, a TypeScript SDK and a CLI from one npm package.",
    "url": "https://www.anchorterminal.com/tools/freestyle",
    "markdownUrl": "https://www.anchorterminal.com/tools/freestyle.md",
    "slimMarkdownUrl": "https://www.anchorterminal.com/tools/freestyle.min.md",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/freestyle.json",
    "license": "Proprietary service with no published terms of service found. The `freestyle` SDK and CLI package on npm is MIT",
    "transports": [
      "http"
    ],
    "remoteUrl": "https://api.freestyle.sh/v5",
    "packages": [
      {
        "registry": "npm",
        "name": "freestyle"
      }
    ],
    "auth": "api-key",
    "authNotes": "Bearer API key in the `Authorization` header, read by the SDK and CLI from `FREESTYLE_API_KEY`. Keys are created after a browser login with `freestyle tokens create`, shown once, and listed and revoked from the CLI. No scopes or expiry on account keys were found. For end users, an identity access token in the `x-freestyle-identity-access-token` header reaches only the VMs and Linux users granted to it, on the exec and terminal routes.",
    "pricing": "freemium",
    "pricingNotes": "Free plan at $0 with 200 vCPU-hours, 400 GiB-hours of memory, 60,000 GiB-hours of storage and 50 GB of transfer a month, up to 10 concurrent VMs, no card needed. Usage beyond that needs Hobby ($50 a month minimum, counted as usage) or Pro ($500). $0.04032 a vCPU-hour, $0.0129 a GiB-hour of memory, $0.000086 a GiB-hour of storage and $0.02 a GB of transfer, metered per second on allocated resources. Enterprise is priced by sales (https://www.freestyle.sh/pricing.md, checked 2026-10-08).",
    "priceSummary": "$0.0403 / vCPU-hr",
    "where": "hosted",
    "x402": {
      "level": "no",
      "evidence": "No x402, MPP or L402 in the docs, the OpenAPI file or the pricing page (checked 2026-10-08).",
      "endpoints": []
    },
    "toolCount": null,
    "popularity": {
      "githubStars": null,
      "npmWeekly": 71758,
      "pypiWeekly": null,
      "asOf": "2026-10-08"
    },
    "docsUrl": "https://www.freestyle.sh/docs",
    "llmsTxt": "https://www.freestyle.sh/llms.txt",
    "openapi": "https://www.freestyle.sh/openapi.json",
    "capabilities": [
      "sandbox.code",
      "sandbox.fs",
      "sandbox.persist",
      "sandbox.browser"
    ],
    "tags": [
      "hosted",
      "no-card",
      "openapi",
      "llms-txt",
      "typescript",
      "cli",
      "vm",
      "snapshots",
      "enterprise"
    ],
    "lastRelease": "2026-09-27",
    "graded": true,
    "anchor": {
      "graded": true,
      "score": 58.5,
      "grade": "C",
      "agentReady": false,
      "rank": 577,
      "ranked": true,
      "rankOf": 950,
      "categoryRank": 10,
      "methodology": "0.4",
      "run": "2026-10-01",
      "scores": {
        "ergonomics": 69,
        "maintenance": 71,
        "payments": 45,
        "reliability": 43,
        "schema": 86,
        "security": 53,
        "transparency": 41
      },
      "pending": [
        "performance",
        "tasks"
      ],
      "breakdown": [
        {
          "key": "reliability",
          "name": "Reliability",
          "weight": 16,
          "effectiveWeight": 20,
          "score": 43,
          "points": 8.6,
          "reason": "Graded on the hosted lines. www.freestyle.sh/status is the vendor's own page with three components (Freestyle VMs, API, Dashboard), all operational, last updated 4 October 2026, with no incident list or component history (10 of 20). No readable history (5). Plan limits are published with numbers (10, 40 and 400 concurrent VMs, per-VM and total resource budgets), but no request rate limit for the API was found in the reviewed documentation (5 of 15). The OpenAPI file documents 429 `LIMIT_EXCEEDED` on VM creation and resize and marks which 409s are safe to retry, resumable uploads take retryable chunks, and a `x-freestyle-background-after-secs` header turns a long call into a polled request. No Retry-After or backoff guidance and no idempotency keys found (8 of 15). The pricing page lists a 99.99% SLA for Enterprise with no SLA document published (5 of 10). The API is served under `/v5` with no beta label (10)."
        },
        {
          "key": "performance",
          "name": "Performance",
          "weight": 10,
          "effectiveWeight": 0,
          "pending": true,
          "points": 0,
          "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
        },
        {
          "key": "schema",
          "name": "Schema \u0026 documentation",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 86,
          "points": 13.98,
          "reason": "A public OpenAPI 3.1 file at www.freestyle.sh/openapi.json with 88 operations under `/v5` and 128 schemas (25). llms.txt, llms-full.txt, a Markdown twin of every docs page and a read-only shell over the docs at `/docs/bash` (10). Every `/v5` operation has a description, and the about page states when to use the product and when not to (18 of 20). Request bodies are typed with enums, required fields and `additionalProperties: false`, with free-form objects only for metadata and environment variables (13 of 15). Each operation lists its error statuses with a named code and cause, on one `PublicErrorBody` shape, and the docs carry TypeScript and CLI examples but few raw HTTP examples (12 of 15). Paths are versioned at `/v5`, but the changelog has three entries in 2026 (11 April, 17 April, 9 September) and the npm package ships no changelog across 25 releases since 10 July (8 of 15)."
        },
        {
          "key": "ergonomics",
          "name": "Agent ergonomics",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 69,
          "points": 11.21,
          "reason": "List calls take `limit` and `offset`, file reads take byte ranges, and paused VMs can be read without starting compute. `exec-await` returns whole stdout and stderr with no documented size control (15 of 25). VM lists filter by state, slug, search, snapshot, VPC and metadata, and snapshot lists by source VM and search (18 of 20). Every error has a stable `code` in SCREAMING_SNAKE_CASE and a message, and limit errors name the limit reached (18 of 20). No idempotency keys. A slug is unique per account and a repeated create answers 409, and the spec says which failures are safe to retry and warns against retrying an exec that returned `VM_NON_RESPONSIVE` (10 of 20). A create call needs only `firewall`, with defaults of 4 vCPU, 8 GiB and 32 GB. The only SDK is TypeScript, shipped with the CLI in one npm package (8 of 15)."
        },
        {
          "key": "security",
          "name": "Security \u0026 auth",
          "weight": 14,
          "effectiveWeight": 17.5,
          "score": 53,
          "points": 9.28,
          "reason": "Account API keys are named, shown once, listed and revoked from the CLI, with no scopes or expiry found. Identity access tokens are separate, limited to granted VMs and named Linux users and to the exec and terminal routes, and revocable one by one (22 of 30). No documented option carries a secret in a URL query string. A new VM has no inbound or outbound network until firewall rules allow it, and identity tokens cannot create team resources. Deleting a VM takes one call with no confirmation step (14 of 20). Credential injection at the edge puts API keys, Postgres passwords and Git tokens on outbound requests without storing them in the VM, and forward auth keeps session cookies out of the guest (12 of 15). Audit logs are listed for Enterprise only, and the April 2026 changelog describes a logs dashboard (5 of 15). `/.well-known/security.txt` answers 404, and no disclosure policy, bug bounty, SOC 2 or ISO 27001 statement was found (0 of 20)."
        },
        {
          "key": "payments",
          "name": "Payments \u0026 pricing",
          "weight": 10,
          "effectiveWeight": 12.5,
          "score": 45,
          "points": 5.63,
          "reason": "No x402, MPP or L402 found in the docs, the OpenAPI file or the pricing page (0). Per-unit prices are public, $0.04032 a vCPU-hour, $0.0129 a GiB-hour of memory, $0.000086 a GiB-hour of storage and $0.02 a GB of data transfer (20). The Free plan costs $0 with 200 vCPU-hours and 400 GiB-hours of memory a month and needs no card (20). A person has to sign in through a browser first. After that an agent can mint its own key with `freestyle tokens create --output json`, so 5 of 20 (5)."
        },
        {
          "key": "tasks",
          "name": "Task success",
          "weight": 10,
          "effectiveWeight": 0,
          "pending": true,
          "points": 0,
          "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
        },
        {
          "key": "maintenance",
          "name": "Maintenance \u0026 community",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 71,
          "points": 6.21,
          "reason": "`freestyle` 0.2.16 was published to npm on 27 September 2026 (30). 25 versions were published between 13 August and 27 September 2026 (20). Closed service with a public changelog of three entries in 2026 and a Discord server, whose response times we did not check (8 of 15). One current official SDK, TypeScript, with the CLI in the same package (10 of 15). The package has three dependencies and no `repository` field, no public CI was found, and the CLI repository linked from the site footer (freestyle-sh/freestyle-sh) last changed on 22 May 2025 (3 of 10)."
        },
        {
          "key": "transparency",
          "name": "Transparency \u0026 trust",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 41,
          "points": 3.59,
          "note": "editorial 20, provenance 62",
          "reason": "The platform is closed. The SDK and CLI are MIT on npm, and no terms of service or service agreement was found on www.freestyle.sh (`/terms`, `/tos` and `/legal` answer 404, and the sitemap lists none), so the terms of use are unclear (8 of 30). The privacy policy, last updated 15 June 2025, covers the website only, and no DPA, retention period or statement on customer VM data was found (3 of 30). The 9 September 2026 changelog deprecates the Git, code execution, web deployment and scheduled trigger APIs, and the OpenAPI file marks every unversioned route deprecated, in both cases without a removal date (6 of 20). The privacy policy names Google Analytics and PostHog for the website. No sub-processor list or data location for VMs was found (3 of 20)."
        }
      ],
      "assessment": {
        "date": "2026-10-08",
        "basis": "public evidence",
        "confidence": "medium",
        "notes": {
          "ergonomics": "List calls take `limit` and `offset`, file reads take byte ranges, and paused VMs can be read without starting compute. `exec-await` returns whole stdout and stderr with no documented size control (15 of 25). VM lists filter by state, slug, search, snapshot, VPC and metadata, and snapshot lists by source VM and search (18 of 20). Every error has a stable `code` in SCREAMING_SNAKE_CASE and a message, and limit errors name the limit reached (18 of 20). No idempotency keys. A slug is unique per account and a repeated create answers 409, and the spec says which failures are safe to retry and warns against retrying an exec that returned `VM_NON_RESPONSIVE` (10 of 20). A create call needs only `firewall`, with defaults of 4 vCPU, 8 GiB and 32 GB. The only SDK is TypeScript, shipped with the CLI in one npm package (8 of 15).",
          "maintenance": "`freestyle` 0.2.16 was published to npm on 27 September 2026 (30). 25 versions were published between 13 August and 27 September 2026 (20). Closed service with a public changelog of three entries in 2026 and a Discord server, whose response times we did not check (8 of 15). One current official SDK, TypeScript, with the CLI in the same package (10 of 15). The package has three dependencies and no `repository` field, no public CI was found, and the CLI repository linked from the site footer (freestyle-sh/freestyle-sh) last changed on 22 May 2025 (3 of 10).",
          "payments": "No x402, MPP or L402 found in the docs, the OpenAPI file or the pricing page (0). Per-unit prices are public, $0.04032 a vCPU-hour, $0.0129 a GiB-hour of memory, $0.000086 a GiB-hour of storage and $0.02 a GB of data transfer (20). The Free plan costs $0 with 200 vCPU-hours and 400 GiB-hours of memory a month and needs no card (20). A person has to sign in through a browser first. After that an agent can mint its own key with `freestyle tokens create --output json`, so 5 of 20 (5).",
          "reliability": "Graded on the hosted lines. www.freestyle.sh/status is the vendor's own page with three components (Freestyle VMs, API, Dashboard), all operational, last updated 4 October 2026, with no incident list or component history (10 of 20). No readable history (5). Plan limits are published with numbers (10, 40 and 400 concurrent VMs, per-VM and total resource budgets), but no request rate limit for the API was found in the reviewed documentation (5 of 15). The OpenAPI file documents 429 `LIMIT_EXCEEDED` on VM creation and resize and marks which 409s are safe to retry, resumable uploads take retryable chunks, and a `x-freestyle-background-after-secs` header turns a long call into a polled request. No Retry-After or backoff guidance and no idempotency keys found (8 of 15). The pricing page lists a 99.99% SLA for Enterprise with no SLA document published (5 of 10). The API is served under `/v5` with no beta label (10).",
          "schema": "A public OpenAPI 3.1 file at www.freestyle.sh/openapi.json with 88 operations under `/v5` and 128 schemas (25). llms.txt, llms-full.txt, a Markdown twin of every docs page and a read-only shell over the docs at `/docs/bash` (10). Every `/v5` operation has a description, and the about page states when to use the product and when not to (18 of 20). Request bodies are typed with enums, required fields and `additionalProperties: false`, with free-form objects only for metadata and environment variables (13 of 15). Each operation lists its error statuses with a named code and cause, on one `PublicErrorBody` shape, and the docs carry TypeScript and CLI examples but few raw HTTP examples (12 of 15). Paths are versioned at `/v5`, but the changelog has three entries in 2026 (11 April, 17 April, 9 September) and the npm package ships no changelog across 25 releases since 10 July (8 of 15).",
          "security": "Account API keys are named, shown once, listed and revoked from the CLI, with no scopes or expiry found. Identity access tokens are separate, limited to granted VMs and named Linux users and to the exec and terminal routes, and revocable one by one (22 of 30). No documented option carries a secret in a URL query string. A new VM has no inbound or outbound network until firewall rules allow it, and identity tokens cannot create team resources. Deleting a VM takes one call with no confirmation step (14 of 20). Credential injection at the edge puts API keys, Postgres passwords and Git tokens on outbound requests without storing them in the VM, and forward auth keeps session cookies out of the guest (12 of 15). Audit logs are listed for Enterprise only, and the April 2026 changelog describes a logs dashboard (5 of 15). `/.well-known/security.txt` answers 404, and no disclosure policy, bug bounty, SOC 2 or ISO 27001 statement was found (0 of 20).",
          "transparency": "The platform is closed. The SDK and CLI are MIT on npm, and no terms of service or service agreement was found on www.freestyle.sh (`/terms`, `/tos` and `/legal` answer 404, and the sitemap lists none), so the terms of use are unclear (8 of 30). The privacy policy, last updated 15 June 2025, covers the website only, and no DPA, retention period or statement on customer VM data was found (3 of 30). The 9 September 2026 changelog deprecates the Git, code execution, web deployment and scheduled trigger APIs, and the OpenAPI file marks every unversioned route deprecated, in both cases without a removal date (6 of 20). The privacy policy names Google Analytics and PostHog for the website. No sub-processor list or data location for VMs was found (3 of 20)."
        },
        "sources": [
          {
            "what": "site index for agents",
            "url": "https://www.freestyle.sh/llms.txt",
            "seen": "2026-10-08"
          },
          {
            "what": "docs index and full docs",
            "url": "https://www.freestyle.sh/docs/llms-full.txt",
            "seen": "2026-10-08"
          },
          {
            "what": "OpenAPI 3.1 file",
            "url": "https://www.freestyle.sh/openapi.json",
            "seen": "2026-10-08"
          },
          {
            "what": "pricing and limits",
            "url": "https://www.freestyle.sh/pricing.md",
            "seen": "2026-10-08"
          },
          {
            "what": "use cases and enterprise options",
            "url": "https://www.freestyle.sh/about.md",
            "seen": "2026-10-08"
          },
          {
            "what": "CLI and API keys",
            "url": "https://www.freestyle.sh/docs/cli.md",
            "seen": "2026-10-08"
          },
          {
            "what": "identity tokens",
            "url": "https://www.freestyle.sh/docs/vms/client-sessions.md",
            "seen": "2026-10-08"
          },
          {
            "what": "VM lifecycle",
            "url": "https://www.freestyle.sh/docs/vms/lifecycle.md",
            "seen": "2026-10-08"
          },
          {
            "what": "status page",
            "url": "https://www.freestyle.sh/status",
            "seen": "2026-10-08"
          },
          {
            "what": "changelog",
            "url": "https://www.freestyle.sh/changelog",
            "seen": "2026-10-08"
          },
          {
            "what": "privacy policy",
            "url": "https://www.freestyle.sh/privacy",
            "seen": "2026-10-08"
          },
          {
            "what": "security.txt, 404",
            "url": "https://www.freestyle.sh/.well-known/security.txt",
            "seen": "2026-10-08"
          },
          {
            "what": "npm package and version dates",
            "url": "https://registry.npmjs.org/freestyle",
            "seen": "2026-10-08"
          },
          {
            "what": "npm weekly downloads",
            "url": "https://api.npmjs.org/downloads/point/last-week/freestyle",
            "seen": "2026-10-08"
          },
          {
            "what": "CLI repository linked from the footer",
            "url": "https://github.com/freestyle-sh/freestyle-sh",
            "seen": "2026-10-08"
          },
          {
            "what": "domain registration",
            "url": "https://rdap.identitydigital.services/rdap/domain/freestyle.sh",
            "seen": "2026-10-08"
          }
        ],
        "openQuestions": [
          "No terms of service, service agreement or DPA was found on www.freestyle.sh, so `provenance.terms` is left out. The dashboard at dash.freestyle.sh is drawn by script and may link terms at sign-up that we did not see.",
          "`provenance.privacy` is left out because the only privacy policy (www.freestyle.sh/privacy, 15 June 2025) says it covers the website.",
          "unchecked: whether the Git, code execution, web deployment and scheduled trigger APIs deprecated on 9 September 2026 were announced beforehand or have a removal date. No deduction taken.",
          "unchecked: the isolation technology. The docs say full hardware virtualisation on bare metal with oversubscribed hosts and name no hypervisor.",
          "unchecked: request rate limits on api.freestyle.sh, which are not in the docs. We sent one unauthenticated request and did not probe.",
          "unchecked: response times on the Discord server, and whether a current public source repository exists for the SDK. The npm package names none.",
          "llms.txt, docs/llms.txt, the Markdown twins and `/docs/bash` open with a note addressed to AI models asking them to install a `freestyle-docs` skill and to carry the note into any summary. We did not act on it and took no deduction.",
          "The lead gave the CLI as the interface. There is also a public REST API at https://api.freestyle.sh/v5 with an OpenAPI file, and the legal entity is Freestyle Cloud Inc."
        ]
      },
      "negative": 0,
      "verdict": "A public OpenAPI 3.1 file describes 88 operations with a stable error code on every failure, and per-VM identity tokens keep the team API key away from end users. No terms of service, product privacy policy, request rate limit or incident history was found, and the only SDK is TypeScript.",
      "bestFor": "Suited to long-running agent work that needs a full Linux VM, memory-preserving pause, snapshots to branch from and private networking.",
      "strengths": [
        "Public OpenAPI 3.1 file with 88 `/v5` operations, each with a description and named error codes per status",
        "A new VM has no inbound or outbound network access until firewall rules allow it",
        "Identity access tokens limited to granted VMs and Linux users, revocable without rotating the team API key",
        "Pausing keeps memory and disk, and a paused VM bills for storage only",
        "Free plan at $0 with 200 vCPU-hours a month, and per-unit prices published without a login"
      ],
      "weaknesses": [
        "No terms of service or service agreement found on the site, and the privacy policy covers the website only",
        "The status page shows three components with no incident history",
        "No request rate limit, Retry-After guidance or idempotency keys found in the docs or the OpenAPI file",
        "No security.txt, disclosure policy, bug bounty or SOC 2 statement found. Audit logs are Enterprise only",
        "TypeScript is the only SDK, and the CLI repository linked from the site last changed on 22 May 2025"
      ],
      "agentNotes": [
        "Send a `firewall` object on every `POST /v5/vms`. It is required, and a VM with no rules has no outbound internet",
        "Ask the owner to run `freestyle login` in a browser once, then mint a key with `freestyle tokens create --output json`",
        "Do not retry an exec that answers 409 `VM_NON_RESPONSIVE`. The command may already have run",
        "Keep `exec-await` under its 300,000 ms cap and use a PTY session or `x-freestyle-background-after-secs` for longer work",
        "Call the `/v5` paths. The unversioned duplicates in the OpenAPI file are marked deprecated"
      ],
      "metrics": {
        "kind": "remote",
        "measured": false
      },
      "reviewCount": 0,
      "avgRating": 0,
      "history": [
        {
          "basis": "public evidence",
          "confidence": "medium",
          "grade": "C",
          "methodology": "0.4",
          "pending": [
            "performance",
            "tasks"
          ],
          "run": "2026-10-01",
          "runLabel": "October 2026 research run",
          "score": 58.5
        }
      ],
      "editorialScores": {
        "ergonomics": 69,
        "maintenance": 71,
        "payments": 45,
        "reliability": 43,
        "schema": 86,
        "security": 53,
        "transparency": 20
      },
      "provenanceScore": 62
    },
    "connect": {
      "install": "npm install freestyle@latest  # CLI without installing: npx freestyle@latest --help"
    },
    "letme": {
      "capability": "https://letme.dev/sandbox.code",
      "tool": "https://letme.dev/freestyle"
    },
    "notable": [
      "A VM gets no inbound or outbound network access by default. `firewall` is the one required field on `POST /v5/vms` (https://www.freestyle.sh/openapi.json)",
      "Pausing saves memory and disk, a paused VM bills for storage only, and files on a paused VM can be read without starting compute (https://www.freestyle.sh/docs/vms/lifecycle.md)",
      "Credential injection adds HTTP headers or Postgres authentication at the edge, so keys are not stored in the VM (https://www.freestyle.sh/changelog)",
      "The 9 September 2026 changelog deprecates the standalone Git, code execution, web deployment and scheduled trigger APIs, with no removal date given (https://www.freestyle.sh/changelog)",
      "Freestyle says VMs start with p99 under 400 ms and snapshot in under 50 ms. These are vendor claims we did not measure (https://www.freestyle.sh/llms.txt)",
      "The vendor's own page says the product is not meant for tasks under 15 minutes, CPU-heavy CI or production application hosting, and that hosts are oversubscribed (https://www.freestyle.sh/about.md)",
      "llms.txt, the Markdown docs and `/docs/bash` open with a note addressed to AI models asking them to install a `freestyle-docs` skill and to repeat the note in any summary (https://www.freestyle.sh/docs/onboard.md)"
    ],
    "area": "agent-runtime",
    "details": [
      {
        "label": "API",
        "value": "REST at https://api.freestyle.sh/v5, OpenAPI 3.1 with 88 operations for VMs, files, PTY sessions, snapshots, VPCs, firewall, TLS rules, tunnels, domains and identities. The same paths without `/v5` are marked deprecated"
      },
      {
        "label": "Free plan",
        "value": "$0, no card. 200 vCPU-hours, 400 GiB-hours of memory, 60,000 GiB-hours of storage and 50 GB of transfer a month, as hard allowances. Adding a card charges $1 and refunds it"
      },
      {
        "label": "Plan limits",
        "value": "Free 10 concurrent VMs, 10 saved VMs, 10 snapshots, 4 vCPU and 8 GiB a VM. Hobby 40, 200, 1,000, 8 vCPU and 16 GiB. Pro 400, 4,000, 12,000, 32 vCPU and 64 GiB"
      },
      {
        "label": "Default VM",
        "value": "4 vCPU, 8 GiB memory, 32 GB disk. Resizing is grow-only and live"
      },
      {
        "label": "Lifecycle",
        "value": "States starting, running, pausing, paused and stopped. `idleTimeoutSeconds`, `ttlSeconds`, `maxRunSeconds`, `maxRunTotalSeconds` and `autoDeleteSeconds` set pause and delete policy. No idle pause unless set"
      },
      {
        "label": "Exec",
        "value": "`POST /v5/vms/{vmIdOrSlug}/exec-await`, default timeout 30 s, maximum 300 s, stdin up to 1 MiB. PTY sessions over WebSocket can be named and reattached"
      },
      {
        "label": "Files",
        "value": "Read, write, stat, list and remove over the API, byte-range reads, and resumable uploads up to 16 GiB"
      },
      {
        "label": "Errors",
        "value": "One body shape with a stable `code` and a `message`. 429 `LIMIT_EXCEEDED` names the plan limit reached"
      },
      {
        "label": "SDK and CLI",
        "value": "TypeScript only, npm package `freestyle` 0.2.16 (27 September 2026), MIT. The CLI covers VMs, snapshots, VPCs, tunnels, firewall, TLS, domains, identities and API keys, with `--output json`"
      },
      {
        "label": "Status",
        "value": "www.freestyle.sh/status, three components (Freestyle VMs, API, Dashboard), no incident history"
      },
      {
        "label": "Enterprise",
        "value": "Custom limits, SAML SSO and SCIM, audit logs, a stated 99.99% SLA, GPU sandboxes and dedicated hardware, all through sales"
      }
    ],
    "unitPrices": [
      {
        "item": "vCPU",
        "unit": "vcpu-hour",
        "usd": 0.04032,
        "note": "Memory extra at $0.0129 a GiB-hour. 200 vCPU-hours a month included"
      },
      {
        "item": "Data transfer",
        "unit": "gb",
        "usd": 0.02,
        "note": "50 GB a month included on Free, 500 GB on Hobby and Pro"
      },
      {
        "item": "Hobby plan",
        "unit": "month",
        "usd": 50,
        "note": "Monthly minimum, counted as usage"
      },
      {
        "item": "Pro plan",
        "unit": "month",
        "usd": 500,
        "note": "Monthly minimum, counted as usage"
      }
    ],
    "provenance": {
      "legalEntity": "Freestyle Cloud Inc.",
      "domain": "freestyle.sh",
      "domainRegistered": "2024-04-11",
      "endpointOnVendorDomain": true,
      "terms": "",
      "privacy": "",
      "statusPage": "https://www.freestyle.sh/status",
      "changelog": "https://www.freestyle.sh/changelog",
      "securityTxt": "none",
      "checked": "2026-10-08",
      "notes": [
        "The privacy policy (last updated 15 June 2025) names Freestyle Cloud Inc. and says it covers the website at freestyle.sh. It is not linked here because it does not govern the product.",
        "No terms of service or service agreement was found. `/terms`, `/tos` and `/legal` answer 404 and the sitemap lists no legal page other than the privacy policy.",
        "The API answers at https://api.freestyle.sh/v5, a freestyle.sh subdomain. One unauthenticated request returned 401 with a `code` and `message`.",
        "www.freestyle.sh/.well-known/security.txt returns 404.",
        "RDAP for freestyle.sh gives a registration date of 2024-04-11 and a transfer on 11 March 2026.",
        "The status page is the vendor's own, with three components and no incident history."
      ],
      "score": 62,
      "checks": [
        {
          "check": "Legal entity named",
          "value": "Freestyle Cloud Inc.",
          "points": 20,
          "max": 20,
          "state": "ok"
        },
        {
          "check": "Domain age",
          "value": "freestyle.sh, registered 2024-04-11 (2 years)",
          "points": 7,
          "max": 15,
          "state": "part"
        },
        {
          "check": "Endpoint on the vendor's domain",
          "value": "api.freestyle.sh",
          "points": 15,
          "max": 15,
          "state": "ok"
        },
        {
          "check": "Terms of service",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "Privacy policy",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "Status page",
          "value": "www.freestyle.sh/status",
          "points": 10,
          "max": 10,
          "state": "ok"
        },
        {
          "check": "Changelog",
          "value": "published",
          "points": 10,
          "max": 10,
          "state": "ok"
        },
        {
          "check": "security.txt",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        }
      ]
    },
    "pageJsonUrl": "https://www.anchorterminal.com/tools/freestyle.json",
    "live": {
      "slug": "freestyle",
      "probe": {
        "target": "https://api.freestyle.sh/v5",
        "method": "get",
        "lastAt": "2026-10-10T10:45:18.768737654Z",
        "lastOk": true,
        "lastStatus": 401,
        "lastMs": 560,
        "lastNote": "asks for credentials",
        "authRequired": true,
        "uptime24h": 100,
        "uptime30d": 100,
        "p50ms24h": 575,
        "p95ms24h": 690,
        "samples24h": 247,
        "samples30d": 280,
        "days": [
          {
            "date": "2026-10-09",
            "probes": 169,
            "ok": 169
          },
          {
            "date": "2026-10-10",
            "probes": 111,
            "ok": 111
          }
        ]
      },
      "vendorStatus": {
        "page": "https://www.freestyle.sh/status",
        "indicator": "unknown",
        "summary": "no machine-readable status found",
        "checkedAt": "2026-10-10T00:50:35.960337769Z"
      },
      "versions": [
        {
          "registry": "npm",
          "name": "freestyle",
          "version": "0.2.16",
          "seenAt": "2026-10-09T16:54:00.673378028Z"
        }
      ],
      "npmWeekly": 77391,
      "securityTxt": {
        "url": "https://freestyle.sh/.well-known/security.txt",
        "state": "none",
        "checkedAt": "2026-10-09T15:40:16.117803307Z"
      },
      "llmsTxt": {
        "url": "https://www.freestyle.sh/llms.txt",
        "ok": true,
        "status": 200,
        "checkedAt": "2026-10-09T14:01:59.48476002Z"
      },
      "pages": [
        {
          "url": "https://www.freestyle.sh/changelog",
          "kind": "changelog",
          "status": 200,
          "checkedAt": "2026-10-09T18:50:15.084757247Z",
          "changedAt": "0001-01-01T00:00:00Z",
          "fingerprint": "5a1d6bbe62f8"
        },
        {
          "url": "https://www.freestyle.sh/pricing.md",
          "kind": "pricing",
          "status": 200,
          "checkedAt": "2026-10-09T18:50:17.14330776Z",
          "changedAt": "0001-01-01T00:00:00Z",
          "fingerprint": "283a46239fe5"
        }
      ],
      "updatedAt": "2026-10-10T10:45:18.768737654Z"
    }
  }
}
