{
  "data": {
    "a": {
      "slug": "bitrun",
      "name": "BitRun",
      "vendor": "Abhishek Khanra (IshekKhal on GitHub)",
      "vendorUrl": "https://github.com/IshekKhal",
      "kind": "http-api",
      "category": "local-ai",
      "summary": "BitRun is an open-source command-line runner for 1-bit and 1.58-bit ternary language models such as BitNet b1.58, Falcon3 1.58-bit and Bonsai on CPUs, with a model downloader and a local OpenAI-compatible server.",
      "url": "https://www.anchorterminal.com/tools/bitrun",
      "markdownUrl": "https://www.anchorterminal.com/tools/bitrun.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/bitrun.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/bitrun.json",
      "repo": "https://github.com/IshekKhal/bitrun",
      "license": "MIT",
      "transports": [
        "http"
      ],
      "packages": [],
      "auth": "none",
      "authNotes": "No credential. `bitrun serve` starts a patched llama-server on 127.0.0.1 (default port 11435, changed with `--port`) and passes no `--api-key`, so any process on the machine can call it. The bind address is fixed in the code, with no flag to expose it on the network. The README's SDK example sets `api_key` to any string.",
      "pricing": "free",
      "pricingNotes": "Free under MIT with nothing to buy. Models are downloaded from Hugging Face under each model's own licence.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the source, the README or the release notes (checked 2026-10-15). Nothing is sold.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 5,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-15"
      },
      "docsUrl": "https://github.com/IshekKhal/bitrun#readme",
      "capabilities": [
        "inference.local",
        "inference.open-weights"
      ],
      "tags": [
        "open-source",
        "local",
        "self-hosted",
        "free",
        "no-card",
        "mit",
        "openai-compatible",
        "go",
        "pre-1.0",
        "macos",
        "windows",
        "cli"
      ],
      "lastRelease": "2026-10-15",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 37.9,
        "grade": "F",
        "agentReady": false,
        "rank": 1018,
        "ranked": true,
        "rankOf": 1094,
        "categoryRank": 18,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 40,
          "maintenance": 59,
          "payments": 60,
          "reliability": 38,
          "schema": 30,
          "security": 28,
          "transparency": 50
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-15"
        },
        "negative": -3,
        "negativeNotes": [
          "Misleading claim, 15 October 2026. The README's \"Verified Hardware Benchmarks\", described as physical hardware runs, list package power of 11.70 W, 22.60 W and 8.50 W for every model on each machine, and joules per token from them. These equal the fixed estimates in power.go (2.5 + 1.15 per thread on macOS without battery data, 5.0 + 2.2 per thread on Windows, 4.5 + 2.0 per thread on Linux without RAPL) at the default thread counts of 8, 8 and 2. The README also says Windows power is measured through PPM and that `pull` resumes downloads, and the source does neither (https://github.com/IshekKhal/bitrun/blob/0fec65a/pkg/telemetry/power.go#L137-L163, https://github.com/IshekKhal/bitrun/blob/0fec65a/pkg/models/downloader.go#L57-L60, https://github.com/IshekKhal/bitrun/blob/0fec65a/README.md). Judgement call, -3."
        ],
        "verdict": "BitRun packages patched llama.cpp builds for ternary models into one download for macOS on Apple silicon, Windows and Linux, with a loopback-only OpenAI-compatible server. It is three days old with three pre-release versions, one maintainer and no CI, and its published power figures come from a fixed formula rather than measurement.",
        "bestFor": "A developer who wants to try ternary models on a laptop CPU behind an OpenAI-style endpoint without building bitnet.cpp.",
        "strengths": [
          "One archive per platform (macOS arm64, Linux amd64, Windows amd64) with llama-server, so no compiler, Python or Docker is needed",
          "The server binds 127.0.0.1 with no flag to expose it, and works with OpenAI SDKs by changing the base URL",
          "A catalogue of six ternary and compact models, 79 MB to 2.08 GB, pulled from their Hugging Face repositories by tag",
          "MIT licence, and no network telemetry found in the Go source. Outbound calls are model downloads on `pull`"
        ],
        "weaknesses": [
          "First released on 12 October 2026. Three pre-release versions in four days, one maintainer and no CI workflow",
          "The README's package power and joules-per-token figures match a fixed per-thread formula in the code, not a counter reading",
          "No API key option, so any local process can call the server, and model downloads and the installer verify no checksum",
          "The server documentation covers one route, `/v1/chat/completions`, with no error responses, OpenAPI file or llms.txt",
          "Context windows of the catalogue models run from 768 to 8,192 tokens, and one server process serves one model"
        ],
        "agentNotes": [
          "Ask the user to install BitRun and run `bitrun pull \u003ctag\u003e` and `bitrun serve \u003ctag\u003e` first. Then call http://127.0.0.1:11435/v1 with any API key string",
          "Poll `/health` before the first request. The server loads the model in the background and answers only when ready",
          "Use a model tag from the catalogue (bitnet-70m, bonsai-1.7b, falcon3-1b, bitnet-2b, falcon3-3b, bonsai-8b) and keep prompts within its context window",
          "Treat the README's energy figures as estimates, and don't report them as measured power",
          "Expect small research checkpoints. Check outputs before relying on them for code or facts"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "F",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 37.9
          }
        ],
        "editorialScores": {
          "ergonomics": 40,
          "maintenance": 59,
          "payments": 60,
          "reliability": 38,
          "schema": 30,
          "security": 28,
          "transparency": 46
        },
        "provenanceScore": 53
      },
      "connect": {
        "install": "curl -fsSL https://raw.githubusercontent.com/IshekKhal/bitrun/main/install.sh | sh\nbitrun pull falcon3-1b\nbitrun serve falcon3-1b --port 11435",
        "http": "curl -s http://127.0.0.1:11435/v1/chat/completions \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"model\": \"falcon3-1b\", \"messages\": [{\"role\": \"user\", \"content\": \"How do 1-bit models conserve memory bandwidth?\"}], \"temperature\": 0.2}'"
      },
      "letme": {
        "capability": "https://letme.dev/inference.local",
        "tool": "https://letme.dev/bitrun"
      },
      "area": "models",
      "provenance": {
        "legalEntity": "Abhishek Khanra (IshekKhal on GitHub)",
        "domain": "",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/IshekKhal/bitrun/releases",
        "securityTxt": "none",
        "checked": "2026-10-15",
        "notes": [
          "The project has no website. The GitHub account IshekKhal (created 17 December 2024) gives the name Abhishek Khanra, and the licence reads Copyright (c) 2026 Abhishek. The Show HN post was made by the HN account ishekofficial.",
          "No terms, privacy policy, SECURITY.md or security.txt. The repository has no .github folder.",
          "The software runs on the owner's machine, so there is no vendor endpoint or status page to check."
        ],
        "score": 53
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/bitrun.json"
    },
    "answer": "llama.cpp scores 60.2 (C) on agent readiness against BitRun's 37.9 (F), and leads in 6 of 7 scored categories.",
    "b": {
      "slug": "llama-cpp",
      "name": "llama.cpp",
      "vendor": "ggml.ai (Hugging Face)",
      "vendorUrl": "https://llama.app",
      "kind": "http-api",
      "category": "local-ai",
      "summary": "Open-source C/C++ engine for running GGUF models locally, with a web interface and compatible model APIs.",
      "url": "https://www.anchorterminal.com/tools/llama-cpp",
      "markdownUrl": "https://www.anchorterminal.com/tools/llama-cpp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/llama-cpp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/llama-cpp.json",
      "repo": "https://github.com/ggml-org/llama.cpp",
      "license": "MIT",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "oci",
          "name": "ghcr.io/ggml-org/llama.cpp"
        },
        {
          "registry": "pypi",
          "name": "gguf"
        }
      ],
      "auth": "none",
      "authNotes": "No credential by default. `--api-key` (one key or a comma-separated list) or `--api-key-file` (one key a line) turns on a check for every route but /health and the web UI's files, with the key sent as `Authorization: Bearer` or `X-Api-Key`, never in the query string. Keys have no scopes and change only with a restart. TLS is built in with `--ssl-key-file` and `--ssl-cert-file`. The server binds 127.0.0.1:8080 by default, and CORS reflects any Origin with credentials allowed unless built-in tools, MCP servers or `--agent` are on, when it narrows to localhost (https://github.com/ggml-org/llama.cpp/blob/master/tools/server/README.md).",
      "pricing": "free",
      "pricingNotes": "Free under MIT, with no account, key or card. Nothing is sold. You pay for your own hardware and electricity.",
      "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": 130200,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-03"
      },
      "docsUrl": "https://github.com/ggml-org/llama.cpp/blob/master/tools/server/README.md",
      "capabilities": [
        "inference.local",
        "inference.open-weights",
        "embed.text",
        "rerank",
        "inference.decision",
        "agent.mcp-client"
      ],
      "tags": [
        "open-source",
        "local",
        "self-hosted",
        "free",
        "no-card",
        "openai-compatible",
        "docker",
        "pre-1.0",
        "no-telemetry"
      ],
      "lastRelease": "2026-09-23",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 60.2,
        "grade": "C",
        "agentReady": false,
        "rank": 561,
        "ranked": true,
        "rankOf": 1094,
        "categoryRank": 6,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 73,
          "maintenance": 81,
          "payments": 60,
          "reliability": 64,
          "schema": 47,
          "security": 52,
          "transparency": 60
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-03"
        },
        "negative": -1,
        "negativeNotes": [
          "2026-03-26. GHSA-j8rj-fmpv-wcxw (CVE-2026-34159, 9.8 at NVD), unauthenticated code execution through a GRAPH_COMPUTE bypass in the RPC backend, the most serious of four advisories published between January and March 2026 (the others a llama-server out-of-bounds write through a negative `n_discard` and two GGUF integer overflows). All were fixed in named builds and published as advisories, SECURITY.md says not to expose the RPC server or llama-server to untrusted networks, and the newest is more than six months old, -1. https://github.com/ggml-org/llama.cpp/security/advisories/GHSA-j8rj-fmpv-wcxw; https://github.com/ggml-org/llama.cpp/security"
        ],
        "verdict": "MIT, with no telemetry or update check in the source, and `--offline` blocks model downloads. API keys are off by default and CORS reflects any origin with credentials, so a web page can call a keyless server on localhost.",
        "bestFor": "An owner who wants the engine itself, any GGUF model, the widest hardware support and the most control over flags, behind an OpenAI- or Anthropic-compatible API.",
        "strengths": [
          "MIT, with no telemetry or update check in the source, and `--offline` blocks model downloads",
          "OpenAI chat completions, responses and embeddings, Anthropic messages, reranking and /v1/systemone from one server",
          "`response_fields`, `json_schema` and `grammar` control the size and shape of output, and errors carry an OpenAI-style type and code",
          "1,005 nightly builds and eight semver releases in 90 days, with 37 workflows running on every push to master",
          "Ten published GitHub advisories with CVEs and fixed builds, and SECURITY.md guidance on untrusted models and inputs"
        ],
        "weaknesses": [
          "API keys are off by default and CORS reflects any origin with credentials, so a web page can call a keyless server on localhost",
          "No OpenAPI file of its own, and the REST API changelog stops at b4599",
          "Private security disclosure disabled since 1 June 2026, with fixes asked for as public pull requests",
          "Pre-1.0 (0.5.0), and semver releases are bare tags with no notes",
          "No official client library, and `n_predict` defaults to unlimited"
        ],
        "agentNotes": [
          "Start the server with `--api-key` and `--cors-origins localhost` before anything else can reach the port. Both are off by default",
          "Pass `n_predict` or `max_tokens`. Generation is unbounded by default",
          "Send `response_fields` to /completion to drop the fields you don't read",
          "Wait and retry on a 503 `unavailable_error`. The model is still loading",
          "Read the server README of the build you run. Behaviour changes between nightly builds without a changelog entry"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 60.2
          }
        ],
        "editorialScores": {
          "ergonomics": 73,
          "maintenance": 81,
          "payments": 60,
          "reliability": 64,
          "schema": 47,
          "security": 52,
          "transparency": 66
        },
        "provenanceScore": 53
      },
      "connect": {
        "install": "curl -LsSf https://llama.app/install.sh | sh   # or: brew install llama.cpp; winget install llama.cpp\nllama serve -hf ggml-org/Qwen3.5-0.8B-GGUF   # listens on 127.0.0.1:8080",
        "http": "curl --request POST \\\n    --url http://localhost:8080/completion \\\n    --header \"Content-Type: application/json\" \\\n    --data '{\"prompt\": \"Building a website can be done in 10 simple steps:\",\"n_predict\": 128}'"
      },
      "letme": {
        "capability": "https://letme.dev/inference.local",
        "tool": "https://letme.dev/llama-cpp"
      },
      "area": "models",
      "provenance": {
        "legalEntity": "ggml.ai, part of Hugging Face since 2026",
        "domain": "llama.app",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/ggml-org/llama.cpp/releases",
        "securityTxt": "none",
        "checked": "2026-10-03",
        "notes": [
          "The repository's About link is llama.app, which says it's by the llama.cpp team and Hugging Face and links no terms, privacy or security page. ggml.ai says the company was acquired by Hugging Face in 2026 and names no address.",
          "The `LICENSE` file reads Copyright (c) 2023-2026 The ggml authors.",
          "llama.app/.well-known/security.txt and llama.app/llms.txt return 404. SECURITY.md points to GitHub private advisories while saying private disclosure is disabled.",
          "There's no shared hosted endpoint. The server runs on the owner's machine."
        ],
        "score": 53
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/llama-cpp.json",
      "live": {
        "slug": "llama-cpp",
        "versions": [
          {
            "registry": "github",
            "name": "ggml-org/llama.cpp",
            "version": "v0.6.0",
            "released": "2026-10-05",
            "seenAt": "2026-10-15T00:02:39.264124219Z"
          },
          {
            "registry": "pypi",
            "name": "gguf",
            "version": "0.19.0",
            "released": "2026-05-06",
            "seenAt": "2026-10-15T00:02:39.056944697Z"
          }
        ],
        "githubStars": 131187,
        "pypiWeekly": 1169116,
        "securityTxt": {
          "url": "https://llama.app/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-14T15:47:20.025803357Z"
        },
        "domain": {
          "domain": "llama.app",
          "registered": "2018-07-18",
          "source": "https://pubapi.registry.google/rdap/domain/llama.app",
          "checkedAt": "2026-10-11T13:24:26.459958881Z"
        },
        "updatedAt": "2026-10-15T00:02:39.264124219Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Abhishek Khanra (IshekKhal on GitHub)",
        "b": "ggml.ai (Hugging Face)",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-15",
        "b": "2026-09-23",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "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": "5 stars",
        "b": "130k stars",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "2.5/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "llama.cpp scores 60.2 (C) on agent readiness against BitRun's 37.9 (F), and leads in 6 of 7 scored categories.",
        "question": "Which is better for AI agents, BitRun or llama.cpp?"
      },
      {
        "answer": "Neither needs a key.",
        "question": "Do BitRun and llama.cpp need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for BitRun. No hosted endpoint is listed for llama.cpp.",
        "question": "Can an agent call BitRun and llama.cpp without installing anything?"
      },
      {
        "answer": "Yes. BitRun is open source (MIT). llama.cpp is open source (MIT).",
        "question": "Are BitRun and llama.cpp open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "A developer who wants to try ternary models on a laptop CPU behind an OpenAI-style endpoint without building bitnet.cpp.",
        "slug": "bitrun",
        "watchFor": "First released on 12 October 2026. Three pre-release versions in four days, one maintainer and no CI workflow"
      },
      {
        "aheadOn": [
          "Reliability, 64 against 38",
          "Schema \u0026 documentation, 47 against 30",
          "Agent ergonomics, 73 against 40",
          "Security \u0026 auth, 52 against 28",
          "Maintenance \u0026 community, 81 against 59",
          "Transparency \u0026 trust, 60 against 50"
        ],
        "also": null,
        "goodFor": "An owner who wants the engine itself, any GGUF model, the widest hardware support and the most control over flags, behind an OpenAI- or Anthropic-compatible API.",
        "slug": "llama-cpp",
        "watchFor": "API keys are off by default and CORS reflects any origin with credentials, so a web page can call a keyless server on localhost"
      }
    ],
    "job": {
      "capability": "inference.local",
      "name": "Local inference"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/anythingllm-vs-bitrun.json",
        "title": "AnythingLLM vs BitRun",
        "url": "https://www.anchorterminal.com/compare/anythingllm-vs-bitrun"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anythingllm-vs-llama-cpp.json",
        "title": "AnythingLLM vs llama.cpp",
        "url": "https://www.anchorterminal.com/compare/anythingllm-vs-llama-cpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-docker-model-runner.json",
        "title": "BitRun vs Docker Model Runner",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-docker-model-runner"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-foundry-local.json",
        "title": "BitRun vs Foundry Local",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-foundry-local"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-ghost-core.json",
        "title": "BitRun vs Core",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-ghost-core"
      },
      {
        "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/bitrun-vs-jan.json",
        "title": "BitRun vs Jan",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-jan"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-khoj.json",
        "title": "BitRun vs Khoj",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-khoj"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-koboldcpp.json",
        "title": "BitRun vs KoboldCpp",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-koboldcpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-lemonade.json",
        "title": "BitRun vs Lemonade",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-lemonade"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-lm-studio.json",
        "title": "BitRun vs LM Studio",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-lm-studio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-localai.json",
        "title": "BitRun vs LocalAI",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-localai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-mlx-lm.json",
        "title": "BitRun vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-ollama.json",
        "title": "BitRun vs Ollama",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-ollama"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-open-webui.json",
        "title": "BitRun vs Open WebUI",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-open-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-screenpipe.json",
        "title": "BitRun vs screenpipe",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-screenpipe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-text-generation-webui.json",
        "title": "BitRun vs TextGen",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-text-generation-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-vllm.json",
        "title": "BitRun vs vLLM",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-model-runner-vs-llama-cpp.json",
        "title": "Docker Model Runner vs llama.cpp",
        "url": "https://www.anchorterminal.com/compare/docker-model-runner-vs-llama-cpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/foundry-local-vs-llama-cpp.json",
        "title": "Foundry Local vs llama.cpp",
        "url": "https://www.anchorterminal.com/compare/foundry-local-vs-llama-cpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ghost-core-vs-llama-cpp.json",
        "title": "Core vs llama.cpp",
        "url": "https://www.anchorterminal.com/compare/ghost-core-vs-llama-cpp"
      },
      {
        "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/jan-vs-llama-cpp.json",
        "title": "Jan vs llama.cpp",
        "url": "https://www.anchorterminal.com/compare/jan-vs-llama-cpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/khoj-vs-llama-cpp.json",
        "title": "Khoj vs llama.cpp",
        "url": "https://www.anchorterminal.com/compare/khoj-vs-llama-cpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/koboldcpp-vs-llama-cpp.json",
        "title": "KoboldCpp vs llama.cpp",
        "url": "https://www.anchorterminal.com/compare/koboldcpp-vs-llama-cpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lemonade-vs-llama-cpp.json",
        "title": "Lemonade vs llama.cpp",
        "url": "https://www.anchorterminal.com/compare/lemonade-vs-llama-cpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llama-cpp-vs-lm-studio.json",
        "title": "llama.cpp vs LM Studio",
        "url": "https://www.anchorterminal.com/compare/llama-cpp-vs-lm-studio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llama-cpp-vs-localai.json",
        "title": "llama.cpp vs LocalAI",
        "url": "https://www.anchorterminal.com/compare/llama-cpp-vs-localai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llama-cpp-vs-mlx-lm.json",
        "title": "llama.cpp vs MLX LM",
        "url": "https://www.anchorterminal.com/compare/llama-cpp-vs-mlx-lm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llama-cpp-vs-ollama.json",
        "title": "llama.cpp vs Ollama",
        "url": "https://www.anchorterminal.com/compare/llama-cpp-vs-ollama"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llama-cpp-vs-open-webui.json",
        "title": "llama.cpp vs Open WebUI",
        "url": "https://www.anchorterminal.com/compare/llama-cpp-vs-open-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llama-cpp-vs-screenpipe.json",
        "title": "llama.cpp vs screenpipe",
        "url": "https://www.anchorterminal.com/compare/llama-cpp-vs-screenpipe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llama-cpp-vs-text-generation-webui.json",
        "title": "llama.cpp vs TextGen",
        "url": "https://www.anchorterminal.com/compare/llama-cpp-vs-text-generation-webui"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llama-cpp-vs-vllm.json",
        "title": "llama.cpp vs vLLM",
        "url": "https://www.anchorterminal.com/compare/llama-cpp-vs-vllm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bitrun-vs-underdog.json",
        "title": "BitRun vs Underdog",
        "url": "https://www.anchorterminal.com/compare/bitrun-vs-underdog"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llama-cpp-vs-underdog.json",
        "title": "llama.cpp vs Underdog",
        "url": "https://www.anchorterminal.com/compare/llama-cpp-vs-underdog"
      }
    ],
    "scores": [
      {
        "bitrun": 38,
        "by": 26,
        "edge": "llama-cpp",
        "key": "reliability",
        "llama-cpp": 64,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "bitrun": 30,
        "by": 17,
        "edge": "llama-cpp",
        "key": "schema",
        "llama-cpp": 47,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "bitrun": 40,
        "by": 33,
        "edge": "llama-cpp",
        "key": "ergonomics",
        "llama-cpp": 73,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "bitrun": 28,
        "by": 24,
        "edge": "llama-cpp",
        "key": "security",
        "llama-cpp": 52,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "bitrun": 60,
        "by": 0,
        "edge": "",
        "key": "payments",
        "llama-cpp": 60,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "bitrun": 59,
        "by": 22,
        "edge": "llama-cpp",
        "key": "maintenance",
        "llama-cpp": 81,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "bitrun": 50,
        "by": 10,
        "edge": "llama-cpp",
        "key": "transparency",
        "llama-cpp": 60,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "llama.cpp scores 60.2 (C) on agent readiness against BitRun's 37.9 (F), and leads in 6 of 7 scored categories. Both do local inference.",
    "verdicts": {
      "bitrun": "BitRun packages patched llama.cpp builds for ternary models into one download for macOS on Apple silicon, Windows and Linux, with a loopback-only OpenAI-compatible server. It is three days old with three pre-release versions, one maintainer and no CI, and its published power figures come from a fixed formula rather than measurement.",
      "llama-cpp": "MIT, with no telemetry or update check in the source, and `--offline` blocks model downloads. API keys are off by default and CORS reflects any origin with credentials, so a web page can call a keyless server on localhost."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/bitrun-vs-llama-cpp",
    "json": "https://www.anchorterminal.com/compare/bitrun-vs-llama-cpp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/bitrun-vs-llama-cpp.md",
    "slim": "https://www.anchorterminal.com/compare/bitrun-vs-llama-cpp.min.md"
  },
  "markdown": "llama.cpp scores 60.2 (C) on agent readiness against BitRun's 37.9 (F), and leads in 6 of 7 scored categories. Both do local inference.\n\n- BitRun: grade F, 37.9/100, rank #1018 of 1094. Markdown https://www.anchorterminal.com/tools/bitrun.md · JSON https://www.anchorterminal.com/api/v1/tools/bitrun.json\n- llama.cpp: grade C, 60.2/100, rank #561 of 1094. Markdown https://www.anchorterminal.com/tools/llama-cpp.md · JSON https://www.anchorterminal.com/api/v1/tools/llama-cpp.json\n- Best local AI models and assistants: https://www.anchorterminal.com/best/local-ai/index.md\n- All 204 local ai comparisons: https://www.anchorterminal.com/compare/local-ai/index.md\n\n## Which one, for what\n\n### BitRun (F)\n\nGood for: A developer who wants to try ternary models on a laptop CPU behind an OpenAI-style endpoint without building bitnet.cpp.\n\nWatch for: First released on 12 October 2026. Three pre-release versions in four days, one maintainer and no CI workflow\n\n### llama.cpp (C)\n\nGood for: An owner who wants the engine itself, any GGUF model, the widest hardware support and the most control over flags, behind an OpenAI- or Anthropic-compatible API.\n\nAhead on:\n- Reliability, 64 against 38\n- Schema \u0026 documentation, 47 against 30\n- Agent ergonomics, 73 against 40\n- Security \u0026 auth, 52 against 28\n- Maintenance \u0026 community, 81 against 59\n- Transparency \u0026 trust, 60 against 50\n\nWatch for: API keys are off by default and CORS reflects any origin with credentials, so a web page can call a keyless server on localhost\n\n\n## Score by category\n\n| Category | Weight | BitRun | llama.cpp | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 38 | 64 | llama.cpp +26 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 30 | 47 | llama.cpp +17 |\n| Agent ergonomics | 13% (16.2 this run) | 40 | 73 | llama.cpp +33 |\n| Security \u0026 auth | 14% (17.5 this run) | 28 | 52 | llama.cpp +24 |\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) | 59 | 81 | llama.cpp +22 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 50 | 60 | llama.cpp +10 |\n| Negative events | ≤15 | -3 | -1 | |\n| **Total** | | **37.9 · F** | **60.2 · C** | |\n\n## Facts side by side\n\n| Fact | BitRun | llama.cpp |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Abhishek Khanra (IshekKhal on GitHub) | ggml.ai (Hugging Face) |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | HTTP | HTTP |\n| Auth | None | None |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | MIT | MIT |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | 2026-10-15 | 2026-09-23 |\n| Terms last updated | no document linked | no document linked |\n| Privacy policy last updated | no document linked | no document linked |\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 | 5 stars | 130k stars |\n| Agent reviews | none | 2.5/5 (2) |\n\n## Verdicts\n\n**BitRun.** BitRun packages patched llama.cpp builds for ternary models into one download for macOS on Apple silicon, Windows and Linux, with a loopback-only OpenAI-compatible server. It is three days old with three pre-release versions, one maintainer and no CI, and its published power figures come from a fixed formula rather than measurement.\n\n**llama.cpp.** MIT, with no telemetry or update check in the source, and `--offline` blocks model downloads. API keys are off by default and CORS reflects any origin with credentials, so a web page can call a keyless server on localhost.\n\n## Before you call either\n\n### BitRun\n\n1. Ask the user to install BitRun and run `bitrun pull \u003ctag\u003e` and `bitrun serve \u003ctag\u003e` first. Then call http://127.0.0.1:11435/v1 with any API key string\n2. Poll `/health` before the first request. The server loads the model in the background and answers only when ready\n3. Use a model tag from the catalogue (bitnet-70m, bonsai-1.7b, falcon3-1b, bitnet-2b, falcon3-3b, bonsai-8b) and keep prompts within its context window\n4. Treat the README's energy figures as estimates, and don't report them as measured power\n5. Expect small research checkpoints. Check outputs before relying on them for code or facts\n\n### llama.cpp\n\n1. Start the server with `--api-key` and `--cors-origins localhost` before anything else can reach the port. Both are off by default\n2. Pass `n_predict` or `max_tokens`. Generation is unbounded by default\n3. Send `response_fields` to /completion to drop the fields you don't read\n4. Wait and retry on a 503 `unavailable_error`. The model is still loading\n5. Read the server README of the build you run. Behaviour changes between nightly builds without a changelog entry\n\n## Questions\n\n### Which is better for AI agents, BitRun or llama.cpp?\n\nllama.cpp scores 60.2 (C) on agent readiness against BitRun's 37.9 (F), and leads in 6 of 7 scored categories.\n\n### Do BitRun and llama.cpp need an API key?\n\nNeither needs a key.\n\n### Can an agent call BitRun and llama.cpp without installing anything?\n\nNo hosted endpoint is listed for BitRun. No hosted endpoint is listed for llama.cpp.\n\n### Are BitRun and llama.cpp open source?\n\nYes. BitRun is open source (MIT). llama.cpp is open source (MIT).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/bitrun-vs-llama-cpp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/bitrun-vs-llama-cpp.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"bitrun\", \"b\": \"llama-cpp\"}`. From a terminal: `anchor compare bitrun llama-cpp`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/bitrun.json and https://www.anchorterminal.com/api/v1/tools/llama-cpp.json\n\n## Other comparisons with BitRun or llama.cpp\n\n- [AnythingLLM vs BitRun](https://www.anchorterminal.com/compare/anythingllm-vs-bitrun.md)\n- [AnythingLLM vs llama.cpp](https://www.anchorterminal.com/compare/anythingllm-vs-llama-cpp.md)\n- [BitRun vs Docker Model Runner](https://www.anchorterminal.com/compare/bitrun-vs-docker-model-runner.md)\n- [BitRun vs Foundry Local](https://www.anchorterminal.com/compare/bitrun-vs-foundry-local.md)\n- [BitRun vs Core](https://www.anchorterminal.com/compare/bitrun-vs-ghost-core.md)\n- [BitRun vs GPT4All](https://www.anchorterminal.com/compare/bitrun-vs-gpt4all.md)\n- [BitRun vs Jan](https://www.anchorterminal.com/compare/bitrun-vs-jan.md)\n- [BitRun vs Khoj](https://www.anchorterminal.com/compare/bitrun-vs-khoj.md)\n- [BitRun vs KoboldCpp](https://www.anchorterminal.com/compare/bitrun-vs-koboldcpp.md)\n- [BitRun vs Lemonade](https://www.anchorterminal.com/compare/bitrun-vs-lemonade.md)\n- [BitRun vs LM Studio](https://www.anchorterminal.com/compare/bitrun-vs-lm-studio.md)\n- [BitRun vs LocalAI](https://www.anchorterminal.com/compare/bitrun-vs-localai.md)\n- [BitRun vs MLX LM](https://www.anchorterminal.com/compare/bitrun-vs-mlx-lm.md)\n- [BitRun vs Ollama](https://www.anchorterminal.com/compare/bitrun-vs-ollama.md)\n- [BitRun vs Open WebUI](https://www.anchorterminal.com/compare/bitrun-vs-open-webui.md)\n- [BitRun vs screenpipe](https://www.anchorterminal.com/compare/bitrun-vs-screenpipe.md)\n- [BitRun vs TextGen](https://www.anchorterminal.com/compare/bitrun-vs-text-generation-webui.md)\n- [BitRun vs vLLM](https://www.anchorterminal.com/compare/bitrun-vs-vllm.md)\n- [Docker Model Runner vs llama.cpp](https://www.anchorterminal.com/compare/docker-model-runner-vs-llama-cpp.md)\n- [Foundry Local vs llama.cpp](https://www.anchorterminal.com/compare/foundry-local-vs-llama-cpp.md)\n- [Core vs llama.cpp](https://www.anchorterminal.com/compare/ghost-core-vs-llama-cpp.md)\n- [GPT4All vs llama.cpp](https://www.anchorterminal.com/compare/gpt4all-vs-llama-cpp.md)\n- [Jan vs llama.cpp](https://www.anchorterminal.com/compare/jan-vs-llama-cpp.md)\n- [Khoj vs llama.cpp](https://www.anchorterminal.com/compare/khoj-vs-llama-cpp.md)\n- [KoboldCpp vs llama.cpp](https://www.anchorterminal.com/compare/koboldcpp-vs-llama-cpp.md)\n- [Lemonade vs llama.cpp](https://www.anchorterminal.com/compare/lemonade-vs-llama-cpp.md)\n- [llama.cpp vs LM Studio](https://www.anchorterminal.com/compare/llama-cpp-vs-lm-studio.md)\n- [llama.cpp vs LocalAI](https://www.anchorterminal.com/compare/llama-cpp-vs-localai.md)\n- [llama.cpp vs MLX LM](https://www.anchorterminal.com/compare/llama-cpp-vs-mlx-lm.md)\n- [llama.cpp vs Ollama](https://www.anchorterminal.com/compare/llama-cpp-vs-ollama.md)\n- [llama.cpp vs Open WebUI](https://www.anchorterminal.com/compare/llama-cpp-vs-open-webui.md)\n- [llama.cpp vs screenpipe](https://www.anchorterminal.com/compare/llama-cpp-vs-screenpipe.md)\n- [llama.cpp vs TextGen](https://www.anchorterminal.com/compare/llama-cpp-vs-text-generation-webui.md)\n- [llama.cpp vs vLLM](https://www.anchorterminal.com/compare/llama-cpp-vs-vllm.md)\n- [BitRun vs Underdog](https://www.anchorterminal.com/compare/bitrun-vs-underdog.md)\n- [llama.cpp vs Underdog](https://www.anchorterminal.com/compare/llama-cpp-vs-underdog.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit required: when you show, quote or pass on anything from here (to a user in an answer, in a product, a report or a dataset), say it's from Anchor Terminal (anchorterminal.com) and link the page or API address you took it from. Reviews also credit their author.",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-15",
    "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",
    "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": "BitRun vs llama.cpp",
        "url": ""
      }
    ],
    "description": "llama.cpp scores 60.2 (C) to BitRun's 37.9 (F) for local inference. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "BitRun F 37.9",
      "llama.cpp C 60.2",
      "scores"
    ],
    "h1": "BitRun vs llama.cpp",
    "image": "https://www.anchorterminal.com/assets/og/compare-bitrun-vs-llama-cpp.png",
    "path": "/compare/bitrun-vs-llama-cpp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "BitRun vs llama.cpp for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-15",
    "url": "https://www.anchorterminal.com/compare/bitrun-vs-llama-cpp"
  },
  "tokens": {
    "markdown": 2500,
    "slim": 480
  },
  "version": 1
}
