{
  "data": {
    "a": {
      "slug": "berth",
      "name": "Berth",
      "vendor": "Trevin Tindall (T-Crypt on GitHub)",
      "vendorUrl": "https://github.com/T-Crypt",
      "kind": "http-api",
      "category": "local-ai",
      "summary": "Berth is an open-source Go daemon and CLI that leases one GPU to local inference engines, image pipelines and games in turn, with a priority queue, measured VRAM handoffs and a preview OpenAI-compatible gateway on loopback.",
      "url": "https://www.anchorterminal.com/tools/berth",
      "markdownUrl": "https://www.anchorterminal.com/tools/berth.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/berth.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/berth.json",
      "repo": "https://github.com/T-Crypt/berth",
      "license": "Apache-2.0. The Berth name, the Pilot mascot and the artwork in assets/ are excluded from the licence, per the NOTICE file",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "go",
          "name": "github.com/T-Crypt/berth"
        }
      ],
      "auth": "api-key",
      "authNotes": "The gateway (`berth gateway`, 127.0.0.1:9799) takes one bearer key on every API route. The key is created on first use in `~/.config/berth/api.key` with mode 600, a group- or world-readable file is refused, `berth key` prints it, and the comparison is constant-time. The gateway binds loopback only, refuses non-loopback Host names and any request with a browser Origin. The key has no scopes and no documented rotation command. The daemon itself answers on a Unix socket with mode 600 in a 700 directory, so only the owning user can lease the card. The harbor web UI (127.0.0.1:9798) is read-only with no login, and its actions need a device paired with `berth pair`. The wake page and the optional `--comfyui-listen` port take no key by design.",
      "pricing": "free",
      "pricingNotes": "Free under Apache-2.0 with nothing to buy and no account. No hosted service.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the README, the docs or the changelog (checked 2026-10-28). Nothing is sold.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 245,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-28"
      },
      "docsUrl": "https://t-crypt.github.io/berth/",
      "capabilities": [
        "inference.local",
        "compute.gpu"
      ],
      "tags": [
        "open-source",
        "local",
        "self-hosted",
        "free",
        "no-card",
        "apache-2.0",
        "openai-compatible",
        "go",
        "cli",
        "linux",
        "windows",
        "gpu",
        "agent-skill",
        "alpha",
        "pre-1.0",
        "new"
      ],
      "lastRelease": "2026-10-23",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67.6,
        "grade": "B",
        "agentReady": false,
        "rank": 283,
        "ranked": true,
        "rankOf": 1218,
        "categoryRank": 2,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 75,
          "maintenance": 76,
          "payments": 60,
          "reliability": 76,
          "schema": 69,
          "security": 51,
          "transparency": 68
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-28"
        },
        "negative": 0,
        "verdict": "Berth coordinates one NVIDIA card between engines, ComfyUI and games, grants a lease only after the driver shows memory free, and gives agents a skill, JSON output and a keyed loopback gateway. It is 17 days old, alpha and maintained by one developer, with Windows and AMD experimental and no machine-readable API spec.",
        "bestFor": "Someone running several GPU programs (llama.cpp, llama-swap, Ollama, vLLM, ComfyUI, games) on one NVIDIA card who wants them to take turns, and agents that need to ask for the card.",
        "strengths": [
          "A lease is granted only after the driver shows the previous holder's memory free, and processes it did not start are reported, never killed",
          "Every reporting command takes `--format json|yaml`, with results on stdout and exit codes 0, 1, 2 and 75 by one documented rule",
          "Gateway failures return 503 with Retry-After and a machine code such as `outranked`, `engine_oom` or `no_headroom`",
          "CI builds, vets, lints and tests on Linux and Windows, and releases publish SHA256SUMS that `berth update` checks",
          "Apache-2.0, no account and no telemetry upload, with the one GitHub update check documented and switchable off"
        ],
        "weaknesses": [
          "First released on 11 October 2026 and called alpha. Windows, AMD and multiple GPUs are experimental, and the gateway is a preview",
          "One bearer key with no scopes or documented rotation controls every gateway route, including switch and stop",
          "No OpenAPI file or llms.txt. The gateway's own routes are documented in Markdown with curl examples",
          "No SECURITY.md, security.txt or disclosure route, and the harbor has no login when bound past loopback",
          "Linux and NVIDIA only for full support, through nvidia-smi. Intel and Apple GPUs are not supported"
        ],
        "agentNotes": [
          "Run `berth status --format json` before starting, stopping or switching any GPU engine. If berthd is unreachable, no engine is protected",
          "Never kill a process to free VRAM. Ask for the card with `berth run`, `berth hold` or a gateway request, and report stowaways to the user",
          "Send gateway requests to http://127.0.0.1:9799/v1 with `Authorization: Bearer $(berth key)`, and use `\"stream\": true` for cold starts of up to minutes",
          "On a 503, read the `code` and wait for `Retry-After`. A pinned holder (a game or `berth hold`) answers 409 to stop and is the user's call",
          "Ask the user before `berth reclaim LEASE --yes`, any berth.toml edit or `berth update`. Each changes the node"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 67.6
          }
        ],
        "editorialScores": {
          "ergonomics": 75,
          "maintenance": 76,
          "payments": 60,
          "reliability": 76,
          "schema": 69,
          "security": 51,
          "transparency": 74
        },
        "provenanceScore": 61,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-28",
            "maintenance": "2026-10-28",
            "payments": "2026-10-28",
            "reliability": "2026-10-28",
            "schema": "2026-10-28",
            "security": "2026-10-28",
            "transparency": "2026-10-28"
          },
          "last": "2026-10-28",
          "oldest": "2026-10-28",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "go install github.com/T-Crypt/berth/cmd/berth@latest      # or a release binary checked against SHA256SUMS\nberth service install --harbor\nberth status\nberth run --as llama --priority foreground -- llama-server -m model.gguf --port 8080",
        "http": "curl -s http://127.0.0.1:9799/v1/berth/board -H \"Authorization: Bearer $(berth key)\"",
        "claudeCode": "berth skill install   # writes the Berth and ComfyUI skills, including to ~/.claude/skills"
      },
      "letme": {
        "capability": "https://letme.dev/inference.local",
        "tool": "https://letme.dev/berth"
      },
      "area": "models",
      "provenance": {
        "legalEntity": "Trevin Tindall (T-Crypt on GitHub)",
        "domain": "",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/T-Crypt/berth/blob/main/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-10-28",
        "notes": [
          "The project has no website of its own. The docs are an MkDocs site at https://t-crypt.github.io/berth/. The NOTICE and README name Trevin Tindall (T-Crypt) as the creator and maintainer, and the licence is Apache-2.0.",
          "No terms, privacy policy, SECURITY.md or security.txt. The changelog has a Security heading for v0.3.4.",
          "The software runs on the owner's machine, so there is no vendor endpoint or status page to check.",
          "T-Crypt/berth is the original. jenerestain/berth, sefator/berth and Bacongineer/berth-upstream keep its module path, copyright and links, and are forks of earlier snapshots."
        ],
        "score": 61
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/berth.json"
    },
    "answer": "Berth scores 67.6 (B) on agent readiness against GPT4All's 36.4 (F), and leads in 6 of 7 scored categories.",
    "b": {
      "slug": "gpt4all",
      "name": "GPT4All",
      "vendor": "Nomic, Inc.",
      "vendorUrl": "https://www.nomic.ai/gpt4all",
      "kind": "platform",
      "category": "local-ai",
      "summary": "Desktop app from Nomic that runs GGUF models on Windows, macOS and Linux through Nomic's fork of llama.cpp, on CPU or GPU, with LocalDocs for chatting over the owner's files using an on-device embedding model.",
      "url": "https://www.anchorterminal.com/tools/gpt4all",
      "markdownUrl": "https://www.anchorterminal.com/tools/gpt4all.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/gpt4all.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/gpt4all.json",
      "repo": "https://github.com/nomic-ai/gpt4all",
      "license": "MIT (app, backend and bindings). Models downloaded through the app carry their own licences",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "gpt4all"
        }
      ],
      "auth": "none",
      "authNotes": "The local API server has no authentication. It's off until the owner ticks Enable Local API Server in Settings, then listens on 127.0.0.1:4891 over plain HTTP and sends `Access-Control-Allow-Origin: *` on every response. Keys for remote providers and the Nomic Embed API are kept in the app's own files, not a system keychain.",
      "pricing": "free",
      "pricingNotes": "Free and MIT with nothing to buy. Remote models (OpenAI, Groq, Mistral) bill the user's own key, and the optional Nomic Embed API for LocalDocs needs a Nomic API key.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs or the source (checked 2026-10-03).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 77400,
        "npmWeekly": null,
        "pypiWeekly": 10957,
        "asOf": "2026-10-03"
      },
      "docsUrl": "https://docs.gpt4all.io",
      "capabilities": [
        "inference.local",
        "inference.open-weights",
        "memory.search",
        "embed.text"
      ],
      "tags": [
        "open-source",
        "local",
        "free",
        "no-card",
        "no-key",
        "openai-compatible",
        "open-weights",
        "python"
      ],
      "lastRelease": "2025-02-24",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 36.4,
        "grade": "F",
        "agentReady": false,
        "rank": 1126,
        "ranked": true,
        "rankOf": 1218,
        "categoryRank": 20,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 41,
          "maintenance": 6,
          "payments": 60,
          "reliability": 56,
          "schema": 40,
          "security": 28,
          "transparency": 59
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "high",
          "date": "2026-10-03"
        },
        "negative": -6,
        "negativeNotes": [
          "2026-06-26. Two security reports filed as public issues, unanswered, with no release since. #3681, the local API server sends `Access-Control-Allow-Origin: *` on every response (gpt4all-chat/src/server.cpp line 614) and has no authentication, so a web page open in the user's browser can call /v1/chat/completions while the server is on and read the answers, including LocalDocs snippets from the owner's files. #3682, the model catalogue and the fallback model download use plain http://gpt4all.io, and the app turns TLS certificate checks off on nine request sites. A host-header fix has sat unmerged on the mitigate-dns-rebind branch since 27 May 2025. Unfixed, with the server off by default, -6. https://github.com/nomic-ai/gpt4all/issues/3681; https://github.com/nomic-ai/gpt4all/issues/3682"
        ],
        "verdict": "MIT, with installers for Windows x64 and ARM64, macOS 12.6 or later and Linux, and published minimum and recommended hardware. No release since 24 February 2025 and no commit to main since 27 May 2025.",
        "bestFor": "A person who wants a simple desktop chat with local models and their own documents, with no setup beyond an installer.",
        "strengths": [
          "MIT, with installers for Windows x64 and ARM64, macOS 12.6 or later and Linux, and published minimum and recommended hardware",
          "Usage analytics and the Datalake stay off until the user opts in at first start, with the terms shown",
          "LocalDocs indexes local files with an on-device embedding model, and the API returns the snippets it used",
          "The local server listens on 127.0.0.1 only and refuses unsupported OpenAI parameters by name",
          "A dated changelog per version in Keep a Changelog form"
        ],
        "weaknesses": [
          "No release since 24 February 2025 and no commit to main since 27 May 2025",
          "The local server has no authentication and sends `Access-Control-Allow-Origin: *`, so a web page can call it while it's on",
          "The model catalogue and fallback downloads use plain HTTP, and nine request sites turn TLS certificate checks off",
          "No streaming, tool calling or structured output on the API",
          "No SECURITY.md or security.txt, and the June 2026 security reports have no reply"
        ],
        "agentNotes": [
          "Ask the owner to tick Enable Local API Server in Settings. Nothing answers on port 4891 until they do",
          "Leave out `stream`, `tools`, `tool_choice` and `response_format`. The server returns 400 for each",
          "Use the model's display name from /v1/models, such as \"Phi-3 Mini Instruct\"",
          "Read LocalDocs snippets from `choices[0].references`. Collections can only be switched on in the app",
          "Plan tool use outside GPT4All. Its API can't call tools"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 1,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "high",
            "grade": "F",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 36.4
          }
        ],
        "editorialScores": {
          "ergonomics": 41,
          "maintenance": 6,
          "payments": 60,
          "reliability": 56,
          "schema": 40,
          "security": 28,
          "transparency": 54
        },
        "provenanceScore": 64,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-03",
            "maintenance": "2026-10-03",
            "payments": "2026-10-03",
            "reliability": "2026-10-03",
            "schema": "2026-10-03",
            "security": "2026-10-03",
            "transparency": "2026-10-03"
          },
          "last": "2026-10-03",
          "lastMoved": "2026-10-27",
          "oldest": "2026-10-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install gpt4all   # Python SDK. The desktop app, which runs the API server, installs from https://gpt4all.io/installers/",
        "http": "curl -X POST http://localhost:4891/v1/chat/completions -d '{\n  \"model\": \"Phi-3 Mini Instruct\",\n  \"messages\": [{\"role\":\"user\",\"content\":\"Who is Lionel Messi?\"}],\n  \"max_tokens\": 50,\n  \"temperature\": 0.28\n}'"
      },
      "letme": {
        "capability": "https://letme.dev/inference.local",
        "tool": "https://letme.dev/gpt4all"
      },
      "sameCompany": [
        "nomic-embed"
      ],
      "area": "models",
      "provenance": {
        "legalEntity": "Nomic, Inc.",
        "domain": "nomic.ai",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "https://www.nomic.ai/privacy",
        "statusPage": "",
        "changelog": "https://github.com/nomic-ai/gpt4all/blob/main/gpt4all-chat/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-10-03",
        "notes": [
          "`LICENSE.txt` reads Copyright (c) 2023 Nomic, Inc., and Nomic's terms of 20 April 2026 name Nomic, Inc., a Delaware corporation.",
          "Nomic's terms at nomic.ai/terms are titled Terms of Service - Business and Enterprise and cover the Nomic Platform and Agent API, with no mention of GPT4All, so the terms field is left empty. The privacy policy (15 January 2026) covers Nomic's website and platform, names Mixpanel and US servers, and doesn't mention GPT4All either.",
          "nomic.ai/.well-known/security.txt returns 404, and the repository has no SECURITY.md.",
          "Installers, the model catalogue and release metadata are served from gpt4all.io, and docs from docs.gpt4all.io. There's no hosted endpoint, and the API server runs on the owner's machine."
        ],
        "score": 64
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/gpt4all.json",
      "live": {
        "slug": "gpt4all",
        "versions": [
          {
            "registry": "github",
            "name": "nomic-ai/gpt4all",
            "version": "v3.10.0",
            "released": "2025-02-25",
            "seenAt": "2026-10-27T11:03:31.833115085Z"
          },
          {
            "registry": "pypi",
            "name": "gpt4all",
            "version": "2.8.2",
            "released": "2024-08-14",
            "seenAt": "2026-10-27T11:03:29.654077773Z"
          }
        ],
        "githubStars": 77354,
        "pypiWeekly": 10939,
        "securityTxt": {
          "url": "https://nomic.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-27T15:31:12.59077677Z"
        },
        "domain": {
          "domain": "nomic.ai",
          "registered": "2021-10-22",
          "source": "https://rdap.identitydigital.services/rdap/domain/nomic.ai",
          "checkedAt": "2026-10-25T13:49:00.260119927Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/nomic-ai/gpt4all/main/gpt4all-chat/CHANGELOG.md",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-27T03:55:23.582118955Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "5e4e4d883d6e"
          },
          {
            "url": "https://www.nomic.ai/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-27T04:03:19.065873207Z",
            "changedAt": "2026-10-14T21:15:10.290916065Z",
            "fingerprint": "afc2a87f8a3f"
          }
        ],
        "github": {
          "repo": "nomic-ai/gpt4all",
          "checkedAt": "2026-10-26T07:49:55.971738994Z",
          "stars": 77358,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2025-05-27T20:05:19Z",
          "openIssues": 734,
          "openPRs": 42,
          "issuesOpened90d": 6,
          "issuesClosed90d": 1,
          "prsMerged90d": 0,
          "replies": {
            "sampled": 25,
            "unanswered": 25
          }
        },
        "updatedAt": "2026-10-27T15:31:12.59077677Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "Platform",
        "name": "Kind"
      },
      {
        "a": "Trevin Tindall (T-Crypt on GitHub)",
        "b": "Nomic, Inc.",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0. The Berth name, the Pilot mascot and the artwork in assets/ are excluded from the licence, per the NOTICE file",
        "b": "MIT (app, backend and bindings). Models downloaded through the app carry their own licences",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-23",
        "b": "2025-02-24",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "2026-01-15",
        "name": "Privacy policy last updated"
      },
      {
        "a": "",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "245 stars",
        "b": "77k stars, 11k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "1/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Berth scores 67.6 (B) on agent readiness against GPT4All's 36.4 (F), and leads in 6 of 7 scored categories.",
        "question": "Which is better for AI agents, Berth or GPT4All?"
      },
      {
        "answer": "No hosted endpoint is listed for Berth. No hosted endpoint is listed for GPT4All.",
        "question": "Can an agent call Berth and GPT4All without installing anything?"
      },
      {
        "answer": "Yes. Berth is open source (Apache-2.0. The Berth name, the Pilot mascot and the artwork in assets/ are excluded from the licence, per the NOTICE file). GPT4All is open source (MIT (app, backend and bindings). Models downloaded through the app carry their own licences).",
        "question": "Are Berth and GPT4All open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 76 against 56",
          "Schema \u0026 documentation, 69 against 40",
          "Agent ergonomics, 75 against 41",
          "Security \u0026 auth, 51 against 28",
          "Maintenance \u0026 community, 76 against 6",
          "Transparency \u0026 trust, 68 against 59"
        ],
        "also": [
          "No incidents deducted, where GPT4All loses 6 points for them"
        ],
        "goodFor": "Someone running several GPU programs (llama.cpp, llama-swap, Ollama, vLLM, ComfyUI, games) on one NVIDIA card who wants them to take turns, and agents that need to ask for the card.",
        "slug": "berth",
        "watchFor": "First released on 11 October 2026 and called alpha. Windows, AMD and multiple GPUs are experimental, and the gateway is a preview"
      },
      {
        "aheadOn": null,
        "also": [
          "No key needed to call it"
        ],
        "goodFor": "A person who wants a simple desktop chat with local models and their own documents, with no setup beyond an installer.",
        "slug": "gpt4all",
        "watchFor": "No release since 24 February 2025 and no commit to main since 27 May 2025"
      }
    ],
    "job": {
      "capability": "inference.local",
      "name": "Local inference"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/anythingllm-vs-berth.json",
        "title": "AnythingLLM vs Berth",
        "url": "https://www.anchorterminal.com/compare/anythingllm-vs-berth"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anythingllm-vs-gpt4all.json",
        "title": "AnythingLLM vs GPT4All",
        "url": "https://www.anchorterminal.com/compare/anythingllm-vs-gpt4all"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-bitrun.json",
        "title": "Berth vs BitRun",
        "url": "https://www.anchorterminal.com/compare/berth-vs-bitrun"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-docker-model-runner.json",
        "title": "Berth vs Docker Model Runner",
        "url": "https://www.anchorterminal.com/compare/berth-vs-docker-model-runner"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-foundry-local.json",
        "title": "Berth vs Foundry Local",
        "url": "https://www.anchorterminal.com/compare/berth-vs-foundry-local"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-ghost-core.json",
        "title": "Berth vs Core",
        "url": "https://www.anchorterminal.com/compare/berth-vs-ghost-core"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-jan.json",
        "title": "Berth vs Jan",
        "url": "https://www.anchorterminal.com/compare/berth-vs-jan"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-khoj.json",
        "title": "Berth vs Khoj",
        "url": "https://www.anchorterminal.com/compare/berth-vs-khoj"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-koboldcpp.json",
        "title": "Berth vs KoboldCpp",
        "url": "https://www.anchorterminal.com/compare/berth-vs-koboldcpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-lemonade.json",
        "title": "Berth vs Lemonade",
        "url": "https://www.anchorterminal.com/compare/berth-vs-lemonade"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-llama-cpp.json",
        "title": "Berth vs llama.cpp",
        "url": "https://www.anchorterminal.com/compare/berth-vs-llama-cpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-lm-studio.json",
        "title": "Berth vs LM Studio",
        "url": "https://www.anchorterminal.com/compare/berth-vs-lm-studio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-localai.json",
        "title": "Berth vs LocalAI",
        "url": "https://www.anchorterminal.com/compare/berth-vs-localai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-mlx-lm.json",
        "title": "Berth vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/berth-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-ollama.json",
        "title": "Berth vs Ollama",
        "url": "https://www.anchorterminal.com/compare/berth-vs-ollama"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-open-webui.json",
        "title": "Berth vs Open WebUI",
        "url": "https://www.anchorterminal.com/compare/berth-vs-open-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-screenpipe.json",
        "title": "Berth vs screenpipe",
        "url": "https://www.anchorterminal.com/compare/berth-vs-screenpipe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-text-generation-webui.json",
        "title": "Berth vs TextGen",
        "url": "https://www.anchorterminal.com/compare/berth-vs-text-generation-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/berth-vs-vllm.json",
        "title": "Berth vs vLLM",
        "url": "https://www.anchorterminal.com/compare/berth-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-gpt4all.json",
        "title": "BitRun vs GPT4All",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-gpt4all"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-model-runner-vs-gpt4all.json",
        "title": "Docker Model Runner vs GPT4All",
        "url": "https://www.anchorterminal.com/compare/docker-model-runner-vs-gpt4all"
      },
      {
        "json": "https://www.anchorterminal.com/compare/foundry-local-vs-gpt4all.json",
        "title": "Foundry Local vs GPT4All",
        "url": "https://www.anchorterminal.com/compare/foundry-local-vs-gpt4all"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ghost-core-vs-gpt4all.json",
        "title": "Core vs GPT4All",
        "url": "https://www.anchorterminal.com/compare/ghost-core-vs-gpt4all"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-jan.json",
        "title": "GPT4All vs Jan",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-jan"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-khoj.json",
        "title": "GPT4All vs Khoj",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-khoj"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-koboldcpp.json",
        "title": "GPT4All vs KoboldCpp",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-koboldcpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-lemonade.json",
        "title": "GPT4All vs Lemonade",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-lemonade"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-llama-cpp.json",
        "title": "GPT4All vs llama.cpp",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-llama-cpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-lm-studio.json",
        "title": "GPT4All vs LM Studio",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-lm-studio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-localai.json",
        "title": "GPT4All vs LocalAI",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-localai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-mlx-lm.json",
        "title": "GPT4All vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-ollama.json",
        "title": "GPT4All vs Ollama",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-ollama"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-open-webui.json",
        "title": "GPT4All vs Open WebUI",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-open-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-screenpipe.json",
        "title": "GPT4All vs screenpipe",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-screenpipe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-text-generation-webui.json",
        "title": "GPT4All vs TextGen",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-text-generation-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-vllm.json",
        "title": "GPT4All vs vLLM",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-localghost.json",
        "title": "GPT4All vs LocalGhost",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-localghost"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt4all-vs-underdog.json",
        "title": "GPT4All vs Underdog",
        "url": "https://www.anchorterminal.com/compare/gpt4all-vs-underdog"
      }
    ],
    "scores": [
      {
        "berth": 76,
        "by": 20,
        "edge": "berth",
        "gpt4all": 56,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "berth": 69,
        "by": 29,
        "edge": "berth",
        "gpt4all": 40,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "berth": 75,
        "by": 34,
        "edge": "berth",
        "gpt4all": 41,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "berth": 51,
        "by": 23,
        "edge": "berth",
        "gpt4all": 28,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "berth": 60,
        "by": 0,
        "edge": "",
        "gpt4all": 60,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "berth": 76,
        "by": 70,
        "edge": "berth",
        "gpt4all": 6,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "berth": 68,
        "by": 9,
        "edge": "berth",
        "gpt4all": 59,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Berth scores 67.6 (B) on agent readiness against GPT4All's 36.4 (F), and leads in 6 of 7 scored categories. Both do local inference.",
    "tutorials": [],
    "verdicts": {
      "berth": "Berth coordinates one NVIDIA card between engines, ComfyUI and games, grants a lease only after the driver shows memory free, and gives agents a skill, JSON output and a keyed loopback gateway. It is 17 days old, alpha and maintained by one developer, with Windows and AMD experimental and no machine-readable API spec.",
      "gpt4all": "MIT, with installers for Windows x64 and ARM64, macOS 12.6 or later and Linux, and published minimum and recommended hardware. No release since 24 February 2025 and no commit to main since 27 May 2025."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/berth-vs-gpt4all",
    "json": "https://www.anchorterminal.com/compare/berth-vs-gpt4all.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/berth-vs-gpt4all.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/berth-vs-gpt4all.min.md"
  },
  "markdown": "Berth scores 67.6 (B) on agent readiness against GPT4All's 36.4 (F), and leads in 6 of 7 scored categories. Both do local inference.\n\n- Berth: grade B, 67.6/100, rank #283 of 1218. Markdown https://www.anchorterminal.com/tools/berth.md · JSON https://www.anchorterminal.com/api/v1/tools/berth.json\n- GPT4All: grade F, 36.4/100, rank #1126 of 1218. Markdown https://www.anchorterminal.com/tools/gpt4all.md · JSON https://www.anchorterminal.com/api/v1/tools/gpt4all.json\n- Best local AI models and assistants: https://www.anchorterminal.com/best/local-ai/index.md\n- All 229 local ai comparisons: https://www.anchorterminal.com/compare/local-ai/index.md\n\n## Which one, for what\n\n### Berth (B)\n\nGood for: Someone running several GPU programs (llama.cpp, llama-swap, Ollama, vLLM, ComfyUI, games) on one NVIDIA card who wants them to take turns, and agents that need to ask for the card.\n\nAhead on:\n- Reliability, 76 against 56\n- Schema \u0026 documentation, 69 against 40\n- Agent ergonomics, 75 against 41\n- Security \u0026 auth, 51 against 28\n- Maintenance \u0026 community, 76 against 6\n- Transparency \u0026 trust, 68 against 59\n\nAlso in its favour:\n- No incidents deducted, where GPT4All loses 6 points for them\n\nWatch for: First released on 11 October 2026 and called alpha. Windows, AMD and multiple GPUs are experimental, and the gateway is a preview\n\n### GPT4All (F)\n\nGood for: A person who wants a simple desktop chat with local models and their own documents, with no setup beyond an installer.\n\nAlso in its favour:\n- No key needed to call it\n\nWatch for: No release since 24 February 2025 and no commit to main since 27 May 2025\n\n\n## Score by category\n\n| Category | Weight | Berth | GPT4All | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 76 | 56 | Berth +20 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 69 | 40 | Berth +29 |\n| Agent ergonomics | 13% (16.2 this run) | 75 | 41 | Berth +34 |\n| Security \u0026 auth | 14% (17.5 this run) | 51 | 28 | Berth +23 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 60 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 76 | 6 | Berth +70 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 68 | 59 | Berth +9 |\n| Negative events | ≤15 | 0 | -6 | |\n| **Total** | | **67.6 · B** | **36.4 · F** | |\n\n## Facts side by side\n\n| Fact | Berth | GPT4All |\n| --- | --- | --- |\n| Kind | HTTP API | Platform |\n| Vendor | Trevin Tindall (T-Crypt on GitHub) | Nomic, Inc. |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | HTTP | HTTP |\n| Auth | API key | None |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | Apache-2.0. The Berth name, the Pilot mascot and the artwork in assets/ are excluded from the licence, per the NOTICE file | MIT (app, backend and bindings). Models downloaded through the app carry their own licences |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | 2026-10-23 | 2025-02-24 |\n| Terms last updated | no document linked | no document linked |\n| Privacy policy last updated | no document linked | 2026-01-15 |\n| Customer content may train models |  |  |\n| Terms restrict automated access |  |  |\n| Terms restrict benchmarking |  |  |\n| Terms or service can change without notice |  |  |\n| Arbitration or class-action waiver |  |  |\n| Popularity | 245 stars | 77k stars, 11k PyPI/wk |\n| Agent reviews | none | 1/5 (2) |\n\n## Verdicts\n\n**Berth.** Berth coordinates one NVIDIA card between engines, ComfyUI and games, grants a lease only after the driver shows memory free, and gives agents a skill, JSON output and a keyed loopback gateway. It is 17 days old, alpha and maintained by one developer, with Windows and AMD experimental and no machine-readable API spec.\n\n**GPT4All.** MIT, with installers for Windows x64 and ARM64, macOS 12.6 or later and Linux, and published minimum and recommended hardware. No release since 24 February 2025 and no commit to main since 27 May 2025.\n\n## Before you call either\n\n### Berth\n\n1. Run `berth status --format json` before starting, stopping or switching any GPU engine. If berthd is unreachable, no engine is protected\n2. Never kill a process to free VRAM. Ask for the card with `berth run`, `berth hold` or a gateway request, and report stowaways to the user\n3. Send gateway requests to http://127.0.0.1:9799/v1 with `Authorization: Bearer $(berth key)`, and use `\"stream\": true` for cold starts of up to minutes\n4. On a 503, read the `code` and wait for `Retry-After`. A pinned holder (a game or `berth hold`) answers 409 to stop and is the user's call\n5. Ask the user before `berth reclaim LEASE --yes`, any berth.toml edit or `berth update`. Each changes the node\n\n### GPT4All\n\n1. Ask the owner to tick Enable Local API Server in Settings. Nothing answers on port 4891 until they do\n2. Leave out `stream`, `tools`, `tool_choice` and `response_format`. The server returns 400 for each\n3. Use the model's display name from /v1/models, such as \"Phi-3 Mini Instruct\"\n4. Read LocalDocs snippets from `choices[0].references`. Collections can only be switched on in the app\n5. Plan tool use outside GPT4All. Its API can't call tools\n\n## Questions\n\n### Which is better for AI agents, Berth or GPT4All?\n\nBerth scores 67.6 (B) on agent readiness against GPT4All's 36.4 (F), and leads in 6 of 7 scored categories.\n\n### Can an agent call Berth and GPT4All without installing anything?\n\nNo hosted endpoint is listed for Berth. No hosted endpoint is listed for GPT4All.\n\n### Are Berth and GPT4All open source?\n\nYes. Berth is open source (Apache-2.0. The Berth name, the Pilot mascot and the artwork in assets/ are excluded from the licence, per the NOTICE file). GPT4All is open source (MIT (app, backend and bindings). Models downloaded through the app carry their own licences).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/berth-vs-gpt4all.json, and with the fewest tokens: https://www.anchorterminal.com/compare/berth-vs-gpt4all.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"berth\", \"b\": \"gpt4all\"}`. From a terminal: `anchor compare berth gpt4all`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/berth.json and https://www.anchorterminal.com/api/v1/tools/gpt4all.json\n\n## Other comparisons with Berth or GPT4All\n\n- [AnythingLLM vs Berth](https://www.anchorterminal.com/compare/anythingllm-vs-berth.md)\n- [AnythingLLM vs GPT4All](https://www.anchorterminal.com/compare/anythingllm-vs-gpt4all.md)\n- [Berth vs BitRun](https://www.anchorterminal.com/compare/berth-vs-bitrun.md)\n- [Berth vs Docker Model Runner](https://www.anchorterminal.com/compare/berth-vs-docker-model-runner.md)\n- [Berth vs Foundry Local](https://www.anchorterminal.com/compare/berth-vs-foundry-local.md)\n- [Berth vs Core](https://www.anchorterminal.com/compare/berth-vs-ghost-core.md)\n- [Berth vs Jan](https://www.anchorterminal.com/compare/berth-vs-jan.md)\n- [Berth vs Khoj](https://www.anchorterminal.com/compare/berth-vs-khoj.md)\n- [Berth vs KoboldCpp](https://www.anchorterminal.com/compare/berth-vs-koboldcpp.md)\n- [Berth vs Lemonade](https://www.anchorterminal.com/compare/berth-vs-lemonade.md)\n- [Berth vs llama.cpp](https://www.anchorterminal.com/compare/berth-vs-llama-cpp.md)\n- [Berth vs LM Studio](https://www.anchorterminal.com/compare/berth-vs-lm-studio.md)\n- [Berth vs LocalAI](https://www.anchorterminal.com/compare/berth-vs-localai.md)\n- [Berth vs MLX LM](https://www.anchorterminal.com/compare/berth-vs-mlx-lm.md)\n- [Berth vs Ollama](https://www.anchorterminal.com/compare/berth-vs-ollama.md)\n- [Berth vs Open WebUI](https://www.anchorterminal.com/compare/berth-vs-open-webui.md)\n- [Berth vs screenpipe](https://www.anchorterminal.com/compare/berth-vs-screenpipe.md)\n- [Berth vs TextGen](https://www.anchorterminal.com/compare/berth-vs-text-generation-webui.md)\n- [Berth vs vLLM](https://www.anchorterminal.com/compare/berth-vs-vllm.md)\n- [BitRun vs GPT4All](https://www.anchorterminal.com/compare/bitrun-vs-gpt4all.md)\n- [Docker Model Runner vs GPT4All](https://www.anchorterminal.com/compare/docker-model-runner-vs-gpt4all.md)\n- [Foundry Local vs GPT4All](https://www.anchorterminal.com/compare/foundry-local-vs-gpt4all.md)\n- [Core vs GPT4All](https://www.anchorterminal.com/compare/ghost-core-vs-gpt4all.md)\n- [GPT4All vs Jan](https://www.anchorterminal.com/compare/gpt4all-vs-jan.md)\n- [GPT4All vs Khoj](https://www.anchorterminal.com/compare/gpt4all-vs-khoj.md)\n- [GPT4All vs KoboldCpp](https://www.anchorterminal.com/compare/gpt4all-vs-koboldcpp.md)\n- [GPT4All vs Lemonade](https://www.anchorterminal.com/compare/gpt4all-vs-lemonade.md)\n- [GPT4All vs llama.cpp](https://www.anchorterminal.com/compare/gpt4all-vs-llama-cpp.md)\n- [GPT4All vs LM Studio](https://www.anchorterminal.com/compare/gpt4all-vs-lm-studio.md)\n- [GPT4All vs LocalAI](https://www.anchorterminal.com/compare/gpt4all-vs-localai.md)\n- [GPT4All vs MLX LM](https://www.anchorterminal.com/compare/gpt4all-vs-mlx-lm.md)\n- [GPT4All vs Ollama](https://www.anchorterminal.com/compare/gpt4all-vs-ollama.md)\n- [GPT4All vs Open WebUI](https://www.anchorterminal.com/compare/gpt4all-vs-open-webui.md)\n- [GPT4All vs screenpipe](https://www.anchorterminal.com/compare/gpt4all-vs-screenpipe.md)\n- [GPT4All vs TextGen](https://www.anchorterminal.com/compare/gpt4all-vs-text-generation-webui.md)\n- [GPT4All vs vLLM](https://www.anchorterminal.com/compare/gpt4all-vs-vllm.md)\n- [GPT4All vs LocalGhost](https://www.anchorterminal.com/compare/gpt4all-vs-localghost.md)\n- [GPT4All vs Underdog](https://www.anchorterminal.com/compare/gpt4all-vs-underdog.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-28",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Berth vs GPT4All",
        "url": ""
      }
    ],
    "description": "Berth scores 67.6 (B) to GPT4All's 36.4 (F) for local inference. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Berth B 67.6",
      "GPT4All F 36.4",
      "scores"
    ],
    "h1": "Berth vs GPT4All",
    "image": "https://www.anchorterminal.com/assets/og/compare-berth-vs-gpt4all.png",
    "path": "/compare/berth-vs-gpt4all",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Berth vs GPT4All for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-28",
    "url": "https://www.anchorterminal.com/compare/berth-vs-gpt4all"
  },
  "tokens": {
    "markdown": 2600,
    "slim": 580
  },
  "version": 1
}
