{
  "data": {
    "a": {
      "slug": "learnharness",
      "name": "LearnHarness",
      "vendor": "Amos Blomqvist",
      "vendorUrl": "https://learnharness.ai",
      "kind": "harness",
      "category": "personal-assistants",
      "summary": "LearnHarness is an open-source desktop app for macOS, Windows and Linux that tests what a learner already understands, plans a route to a goal, teaches step by step and keeps a local knowledge graph, using the learner's own model keys.",
      "url": "https://www.anchorterminal.com/tools/learnharness",
      "markdownUrl": "https://www.anchorterminal.com/tools/learnharness.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/learnharness.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/learnharness.json",
      "repo": "https://github.com/amosblomqvist/learnharness",
      "license": "AGPL-3.0-only",
      "transports": [],
      "packages": [],
      "auth": "none",
      "authNotes": "No LearnHarness account. The learner adds keys for model providers (OpenAI, Anthropic, Google, DeepSeek, OpenRouter and others), or one OpenAI-compatible endpoint, or signs in with ChatGPT, GitHub Copilot or Grok, or connects an installed Claude Code CLI. Deepgram (dictation) and Tavily or Brave (web search) take separate keys.",
      "pricing": "free",
      "pricingNotes": "Free under AGPL-3.0 with nothing to buy. Model usage is billed by the provider the learner configures, or counts against a ChatGPT, Copilot or Grok plan, and the app shows a live cost meter. The README says any future charge would be for convenience such as managed keys or hosting.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the README, the website, the skill or the source files read (checked 2026-10-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 4204,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-30"
      },
      "docsUrl": "https://github.com/amosblomqvist/learnharness/blob/main/docs/development.md",
      "capabilities": [
        "assistant.memory",
        "assistant.self-hosted",
        "memory.graph",
        "memory.read",
        "web.search"
      ],
      "tags": [
        "open-source",
        "local",
        "free",
        "no-card",
        "agpl",
        "desktop-app",
        "macos",
        "windows",
        "linux",
        "agent-skill",
        "typescript",
        "new"
      ],
      "lastRelease": "2026-10-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 59.3,
        "grade": "C",
        "agentReady": false,
        "rank": 648,
        "ranked": true,
        "rankOf": 1239,
        "categoryRank": 9,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 60,
          "maintenance": 71,
          "payments": 60,
          "reliability": 56,
          "schema": 63,
          "security": 52,
          "transparency": 60
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-30"
        },
        "negative": 0,
        "verdict": "The in-app agent reads files but cannot change them or run commands, and a bundled skill gives other agents a documented read-only view of sessions and the knowledge graph. The project is 14 days old at 0.4.0, its file reads reach the whole home directory without approval, and it has no security policy.",
        "bestFor": "A tutor for one learner that keeps a local record of sessions and a graph of propositions and reasoning chains.",
        "strengths": [
          "AGPL-3.0 source, with installers for macOS (signed and notarised), Windows and Linux on GitHub Releases",
          "A bundled agent skill with Python readers that print sessions and graph data as text or JSON and write nothing",
          "The in-app agent has no shell, write or send tool, and Claude Code runs with its built-in tools switched off",
          "The desktop server binds 127.0.0.1 and requires a per-launch 64-character secret header",
          "Nine releases from 17 to 29 October 2026, with CI running typecheck, tests, lint and three-OS builds on main"
        ],
        "weaknesses": [
          "The read, ls, find and grep tools resolve against the home directory with no allow list, and their output goes to the model provider",
          "Provider keys and ChatGPT sign-in credentials are stored as plaintext JSON at mode 0600, not in the OS keychain",
          "No SECURITY.md, security.txt, privacy policy or terms. learnharness.ai answers 404 for each",
          "0.x software created on 16 October 2026, with 265 open issues and pull requests and none of the 39 newest pull requests merged",
          "No outside agent can start or drive a lesson. The local HTTP API is for the app's own window"
        ],
        "agentNotes": [
          "Use the bundled skill (`skills/learnharness/SKILL.md`) to read a learner's record. It needs Python 3.10 or later and writes nothing",
          "Pass `--format json` before the subcommand, for example `python3 -B scripts/graph.py --format json propositions`",
          "Treat stored answer keys and teacher prose as model-authored. A proposition in the graph is not evidence the learner understood it",
          "Do not read `auth.json`, which sits one folder above the data folder and holds provider keys in plain text",
          "Close the app or re-read when a stable snapshot matters. The readers do not lock files while the app writes"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 59.3
          }
        ],
        "editorialScores": {
          "ergonomics": 60,
          "maintenance": 71,
          "payments": 60,
          "reliability": 56,
          "schema": 63,
          "security": 52,
          "transparency": 64
        },
        "provenanceScore": 56,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-30",
            "maintenance": "2026-10-30",
            "payments": "2026-10-30",
            "reliability": "2026-10-30",
            "schema": "2026-10-30",
            "security": "2026-10-30",
            "transparency": "2026-10-30"
          },
          "last": "2026-10-30",
          "oldest": "2026-10-30",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "letme": {
        "capability": "https://letme.dev/assistant.memory",
        "tool": "https://letme.dev/learnharness"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "No legal entity found. Copyright Amos Blomqvist",
        "domain": "learnharness.ai",
        "domainRegistered": "2026-10-09",
        "endpointOnVendorDomain": null,
        "terms": "https://raw.githubusercontent.com/amosblomqvist/learnharness/main/LICENSE",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/amosblomqvist/learnharness/releases",
        "securityTxt": "none",
        "checked": "2026-10-30",
        "notes": [
          "The footer of learnharness.ai reads © 2026 Amos Blomqvist, and `package.json` names Amos Blomqvist as author. No company is named.",
          "learnharness.ai/privacy, /terms, /llms.txt and /.well-known/security.txt return 404, and the repository has no SECURITY.md, so the AGPL-3.0 licence stands in for terms.",
          "RDAP (Identity Digital) gives learnharness.ai a registration date of 2026-10-09.",
          "The app runs on the learner's machine. Its only vendor-side service seen is the website, which a release workflow updates. Updates come from GitHub Releases.",
          "There is no CHANGELOG file. Each GitHub release carries its notes."
        ],
        "score": 56
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/learnharness.json"
    },
    "answer": "nanobot scores 63 (B) on agent readiness against LearnHarness's 59.3 (C), and leads in 5 of 7 scored categories. LearnHarness leads on transparency \u0026 trust.",
    "b": {
      "slug": "nanobot",
      "name": "nanobot",
      "vendor": "HKUDS",
      "vendorUrl": "https://nanobot.wiki",
      "kind": "harness",
      "category": "personal-assistants",
      "summary": "nanobot is an open-source, self-hosted personal AI agent written in Python by HKUDS. It runs as a gateway on the owner's machine and answers in a web UI, a terminal and chat apps, with tools, memory and scheduled automations.",
      "url": "https://www.anchorterminal.com/tools/nanobot",
      "markdownUrl": "https://www.anchorterminal.com/tools/nanobot.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/nanobot.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/nanobot.json",
      "repo": "https://github.com/HKUDS/nanobot",
      "license": "MIT",
      "transports": [],
      "packages": [
        {
          "registry": "pypi",
          "name": "nanobot-ai"
        }
      ],
      "auth": "none",
      "authNotes": "No account with the project. The owner supplies model provider keys or an OAuth sign-in, and bot tokens or mailbox passwords for each channel, in `~/.nanobot/config.json`. The WebUI on localhost needs no password, and binding to all interfaces requires a token.",
      "pricing": "free",
      "pricingNotes": "Free under the MIT licence, with nothing to buy from the project. The owner pays the model provider, or nothing with a local model. The optional Render deployment needs a paid Render service.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs or the source (checked 2026-10-12).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 49000,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-12"
      },
      "docsUrl": "https://nanobot.wiki/docs/latest/getting-started/nanobot-overview",
      "llmsTxt": "https://nanobot.wiki/llms.txt",
      "capabilities": [
        "assistant.proactive",
        "assistant.messaging",
        "assistant.memory",
        "assistant.self-hosted",
        "assistant.accounts",
        "agent.mcp-client"
      ],
      "tags": [
        "open-source",
        "self-hosted",
        "local",
        "free",
        "python",
        "mit",
        "llms-txt",
        "docker",
        "alpha"
      ],
      "lastRelease": "2026-09-15",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63,
        "grade": "B",
        "agentReady": false,
        "rank": 483,
        "ranked": true,
        "rankOf": 1239,
        "categoryRank": 6,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 82,
          "payments": 60,
          "reliability": 70,
          "schema": 77,
          "security": 63,
          "transparency": 54
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-12"
        },
        "negative": -6,
        "negativeNotes": [
          "2026-09-02. GHSA-vc5v-6vwm-wf9m (critical, 9.3, no CVE). Web fetch did not block internal addresses, so cloud metadata and internal services could be read without authentication in versions before 0.3.0. Fixed in 0.3.0 of 25 July and published, -2. https://github.com/HKUDS/nanobot/security/advisories/GHSA-vc5v-6vwm-wf9m",
          "2026-03-27. GHSA-4gmr-2vc8-7qh3 (CVE-2026-33654, high). A spoofed email could inject instructions through email polling with no user action, up to command execution, in 0.1.4.post5 and earlier. Fixed in 0.1.4.post6 and published, more than six months ago, -2. https://github.com/HKUDS/nanobot/security/advisories/GHSA-4gmr-2vc8-7qh3",
          "2026-03-11. GHSA-g6cf-xjwr-pm77 (CVE-2026-31977, critical, 9.0). A sender ID containing `|` passed the `allowFrom` check in versions before 0.1.4.post4. Fixed and published, more than six months ago, -1. https://github.com/HKUDS/nanobot/security/advisories/GHSA-g6cf-xjwr-pm77",
          "2026-04-14 and 2026-05-24. GHSA-v5j3-4q66-58cf (CVE-2026-35589, high, 8.0), cross-site WebSocket hijacking of the WhatsApp bridge, fixed in 0.1.5, and GHSA-3f63-vcp3-hvqr (CVE-2026-48716, high, 8.7), file write through a WhatsApp document name. Both fixed and published, -1 together. https://github.com/HKUDS/nanobot/security/advisories"
        ],
        "verdict": "nanobot runs on the owner's machine under the MIT licence, with no telemetry found in its source and memory kept as files the owner can read and restore. No per-action approval step was found, and the shell sandbox and workspace restriction are off by default. Five security advisories were published between March and September 2026, all with fixes.",
        "bestFor": "A technical owner who wants an assistant on their own machine across many chat apps, with file-based memory and a free choice of model.",
        "strengths": [
          "MIT licence, runs on the owner's machine, and no telemetry code was found in the source at v0.3.5",
          "Long-term memory is plain files (`USER.md`, `SOUL.md`, `memory/MEMORY.md`) versioned with Git, with `/dream-log` and `/dream-restore` to inspect and roll back",
          "Chat channels deny unknown senders by default since v0.1.4.post4, with pairing codes the owner approves",
          "Email requires SPF and DKIM results from a named receiving service since v0.3.5, and mailbox access stays off until `consentGranted` is set",
          "Optional `bwrap` (Linux) and `seatbelt` (macOS) sandboxes for shell commands, and an SSRF guard on web fetches and HTTP MCP connections"
        ],
        "weaknesses": [
          "No per-action approval was found in the docs or source. The agent sends messages, runs shell commands and edits files without asking",
          "`tools.restrictToWorkspace` defaults to false and `tools.exec.sandbox` to empty. Neither sandbox restricts network access, and Windows has none",
          "Five advisories published from 11 March to 2 September 2026, two rated critical, among them an allowlist bypass and unauthenticated SSRF in web fetch",
          "SECURITY.md lists plain-text API keys in `config.json`, no rate limiting and limited security event logging as known limitations",
          "Version 0.3.5 with an Alpha classifier, 214 open issues and 614 open pull requests on 12 October 2026"
        ],
        "agentNotes": [
          "Set `tools.restrictToWorkspace` to true and `tools.exec.sandbox` to `bwrap` or `seatbelt` before giving it real accounts. Both are off by default",
          "Run 0.3.0 or later. Earlier versions carry the published SSRF flaw in web fetch (GHSA-vc5v-6vwm-wf9m)",
          "Keep `allowFrom` narrow on every channel and never set `[\"*\"]` on Email, which has no pairing",
          "Write secrets as `${VAR}` references in `~/.nanobot/config.json`. Plain values are stored in clear text",
          "Use `nanobot -m \"...\"` for a one-shot run, and keep `nanobot gateway` running for channels, schedules and heartbeat"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 2.8,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 63
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 82,
          "payments": 60,
          "reliability": 70,
          "schema": 77,
          "security": 63,
          "transparency": 69
        },
        "provenanceScore": 39,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-12",
            "maintenance": "2026-10-12",
            "payments": "2026-10-12",
            "reliability": "2026-10-12",
            "schema": "2026-10-12",
            "security": "2026-10-12",
            "transparency": "2026-10-12"
          },
          "last": "2026-10-12",
          "lastMoved": "2026-10-28",
          "oldest": "2026-10-12",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "python -m pip install nanobot-ai   # or: uv tool install nanobot-ai   # then: nanobot webui",
        "headless": {
          "command": "nanobot -m \"$TASK\""
        }
      },
      "letme": {
        "capability": "https://letme.dev/assistant.proactive",
        "tool": "https://letme.dev/nanobot"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "",
        "domain": "nanobot.wiki",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/HKUDS/nanobot/releases",
        "securityTxt": "none",
        "checked": "2026-10-12",
        "notes": [
          "No legal entity is named. The repository belongs to the GitHub organisation HKUDS, which a published advisory title calls the Hong Kong University Data Intelligence Lab. pyproject.toml names Xubin Ren and the nanobot contributors as authors.",
          "nanobot.wiki has no terms or privacy page linked from its home page or llms.txt, and `/.well-known/security.txt` answered with the site's not-found page on 12 October 2026.",
          "SECURITY.md in the repository asks for reports through a private GitHub advisory or by email and aims to respond within 48 hours.",
          "There is no hosted endpoint. A gateway answers on its owner's own host."
        ],
        "score": 39
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/nanobot.json",
      "live": {
        "slug": "nanobot",
        "versions": [
          {
            "registry": "github",
            "name": "HKUDS/nanobot",
            "version": "v0.4.0",
            "released": "2026-10-28",
            "seenAt": "2026-10-30T14:30:52.791114257Z"
          },
          {
            "registry": "pypi",
            "name": "nanobot-ai",
            "version": "0.4.0",
            "released": "2026-10-28",
            "seenAt": "2026-10-30T14:30:52.678796813Z"
          }
        ],
        "githubStars": 49676,
        "pypiWeekly": 18002,
        "securityTxt": {
          "url": "https://nanobot.wiki/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-30T15:38:50.619828306Z"
        },
        "llmsTxt": {
          "url": "https://nanobot.wiki/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-30T15:08:10.426226137Z"
        },
        "domain": {
          "domain": "nanobot.wiki",
          "registered": "2026-03-31",
          "source": "https://rdap.nic.wiki/domain/nanobot.wiki",
          "checkedAt": "2026-10-25T13:56:13.32227892Z"
        },
        "github": {
          "repo": "hkuds/nanobot",
          "checkedAt": "2026-10-26T07:33:57.056306741Z",
          "stars": 49357,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-10-26T07:23:55Z",
          "openIssues": 209,
          "openPRs": 657,
          "issuesOpened90d": 171,
          "issuesClosed90d": 142,
          "prsMerged90d": 769,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 38,
            "failure": 12,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-10-26T07:32:15Z"
          },
          "advisories": [
            {
              "ghsa": "GHSA-vc5v-6vwm-wf9m",
              "severity": "critical",
              "published": "2026-09-02T02:03:45Z"
            },
            {
              "ghsa": "GHSA-3f63-vcp3-hvqr",
              "cve": "CVE-2026-48716",
              "severity": "high",
              "published": "2026-05-24T16:08:58Z"
            },
            {
              "ghsa": "GHSA-v5j3-4q66-58cf",
              "cve": "CVE-2026-35589",
              "severity": "high",
              "published": "2026-04-14T20:00:28Z"
            },
            {
              "ghsa": "GHSA-4gmr-2vc8-7qh3",
              "cve": "CVE-2026-33654",
              "severity": "high",
              "published": "2026-03-27T15:13:47Z"
            },
            {
              "ghsa": "GHSA-g6cf-xjwr-pm77",
              "cve": "CVE-2026-31977",
              "severity": "critical",
              "published": "2026-03-11T07:02:19Z"
            }
          ],
          "replies": {
            "sampled": 25,
            "unanswered": 9,
            "medianDays": 1.6
          }
        },
        "updatedAt": "2026-10-30T15:38:50.619828306Z"
      }
    },
    "facts": [
      {
        "a": "Agent harness",
        "b": "Agent harness",
        "name": "Kind"
      },
      {
        "a": "Amos Blomqvist",
        "b": "HKUDS",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "AGPL-3.0-only",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-29",
        "b": "2026-09-15",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "4.2k stars",
        "b": "49k stars",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "2.8/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "nanobot scores 63 (B) on agent readiness against LearnHarness's 59.3 (C), and leads in 5 of 7 scored categories. LearnHarness leads on transparency \u0026 trust.",
        "question": "Which is better for AI agents, LearnHarness or nanobot?"
      },
      {
        "answer": "Yes. LearnHarness is open source (AGPL-3.0-only). nanobot is open source (MIT).",
        "question": "Are LearnHarness and nanobot open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Transparency \u0026 trust, 60 against 54"
        ],
        "also": [
          "Free to start without a card",
          "No incidents deducted, where nanobot loses 6 points for them"
        ],
        "goodFor": "A tutor for one learner that keeps a local record of sessions and a graph of propositions and reasoning chains.",
        "slug": "learnharness",
        "watchFor": "The read, ls, find and grep tools resolve against the home directory with no allow list, and their output goes to the model provider"
      },
      {
        "aheadOn": [
          "Reliability, 70 against 56",
          "Schema \u0026 documentation, 77 against 63",
          "Agent ergonomics, 74 against 60",
          "Security \u0026 auth, 63 against 52",
          "Maintenance \u0026 community, 82 against 71"
        ],
        "also": null,
        "goodFor": "A technical owner who wants an assistant on their own machine across many chat apps, with file-based memory and a free choice of model.",
        "slug": "nanobot",
        "watchFor": "No per-action approval was found in the docs or source. The agent sends messages, runs shell commands and edits files without asking"
      }
    ],
    "job": {
      "capability": "assistant.memory",
      "name": "Assistants that remember you"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/asaply-vs-nanobot.json",
        "title": "asaply vs nanobot",
        "url": "https://www.anchorterminal.com/compare/asaply-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/asmi-vs-nanobot.json",
        "title": "Asmi vs nanobot",
        "url": "https://www.anchorterminal.com/compare/asmi-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boba-vs-nanobot.json",
        "title": "Boba vs nanobot",
        "url": "https://www.anchorterminal.com/compare/boba-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brea-vs-nanobot.json",
        "title": "Brea vs nanobot",
        "url": "https://www.anchorterminal.com/compare/brea-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/del-vs-nanobot.json",
        "title": "Del vs nanobot",
        "url": "https://www.anchorterminal.com/compare/del-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hirealpha-vs-nanobot.json",
        "title": "HireAlpha vs nanobot",
        "url": "https://www.anchorterminal.com/compare/hirealpha-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-openinstinct.json",
        "title": "nanobot vs OpenInstinct",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-openinstinct"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-orbits.json",
        "title": "nanobot vs Orbits",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-orbits"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-orchid-ai.json",
        "title": "nanobot vs Orchid",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-orchid-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-szn.json",
        "title": "nanobot vs szn",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-szn"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-tab-bot.json",
        "title": "nanobot vs Tab",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-tab-bot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-zapia.json",
        "title": "nanobot vs Zapia",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-zapia"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-nanobot.json",
        "title": "AstrBot vs nanobot",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boski-vs-nanobot.json",
        "title": "Boski vs nanobot",
        "url": "https://www.anchorterminal.com/compare/boski-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/caddy-app-vs-nanobot.json",
        "title": "Caddy vs nanobot",
        "url": "https://www.anchorterminal.com/compare/caddy-app-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-duet-vs-nanobot.json",
        "title": "Claude Duet vs nanobot",
        "url": "https://www.anchorterminal.com/compare/claude-duet-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cowagent-vs-nanobot.json",
        "title": "CowAgent vs nanobot",
        "url": "https://www.anchorterminal.com/compare/cowagent-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/folk-nozomio-vs-nanobot.json",
        "title": "folk vs nanobot",
        "url": "https://www.anchorterminal.com/compare/folk-nozomio-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gaia-vs-nanobot.json",
        "title": "GAIA vs nanobot",
        "url": "https://www.anchorterminal.com/compare/gaia-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-spark-vs-nanobot.json",
        "title": "Gemini Spark vs nanobot",
        "url": "https://www.anchorterminal.com/compare/gemini-spark-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grok-bot-vs-nanobot.json",
        "title": "Grok Bot vs nanobot",
        "url": "https://www.anchorterminal.com/compare/grok-bot-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/haven-vs-nanobot.json",
        "title": "Haven vs nanobot",
        "url": "https://www.anchorterminal.com/compare/haven-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hermes-agent-vs-nanobot.json",
        "title": "Hermes Agent vs nanobot",
        "url": "https://www.anchorterminal.com/compare/hermes-agent-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/instinct-vs-nanobot.json",
        "title": "Instinct vs nanobot",
        "url": "https://www.anchorterminal.com/compare/instinct-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ironclaw-vs-nanobot.json",
        "title": "IronClaw vs nanobot",
        "url": "https://www.anchorterminal.com/compare/ironclaw-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/leon-vs-nanobot.json",
        "title": "Leon vs nanobot",
        "url": "https://www.anchorterminal.com/compare/leon-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lindy-vs-nanobot.json",
        "title": "Lindy vs nanobot",
        "url": "https://www.anchorterminal.com/compare/lindy-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-nanoclaw.json",
        "title": "nanobot vs NanoClaw",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-nanoclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-openai-dots.json",
        "title": "nanobot vs Dots",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-openai-dots"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-openclaw.json",
        "title": "nanobot vs OpenClaw",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-openclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-openduet.json",
        "title": "nanobot vs OpenDuet",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-openduet"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-picoclaw.json",
        "title": "nanobot vs PicoClaw",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-picoclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-poke.json",
        "title": "nanobot vs Poke",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-poke"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-qwenpaw.json",
        "title": "nanobot vs QwenPaw",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-qwenpaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-tasker-ai.json",
        "title": "nanobot vs Tasker AI",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-tasker-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-town.json",
        "title": "nanobot vs Town",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-zeroclaw.json",
        "title": "nanobot vs ZeroClaw",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-zeroclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-zo-computer.json",
        "title": "nanobot vs Zo Computer",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-zo-computer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/asaply-vs-learnharness.json",
        "title": "asaply vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/asaply-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/asmi-vs-learnharness.json",
        "title": "Asmi vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/asmi-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atticus-vs-learnharness.json",
        "title": "Atticus vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/atticus-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atticus-vs-nanobot.json",
        "title": "Atticus vs nanobot",
        "url": "https://www.anchorterminal.com/compare/atticus-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boba-vs-learnharness.json",
        "title": "Boba vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/boba-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boski-vs-learnharness.json",
        "title": "Boski vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/boski-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brea-vs-learnharness.json",
        "title": "Brea vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/brea-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/caddy-app-vs-learnharness.json",
        "title": "Caddy vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/caddy-app-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-duet-vs-learnharness.json",
        "title": "Claude Duet vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/claude-duet-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cowagent-vs-learnharness.json",
        "title": "CowAgent vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/cowagent-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-learnharness.json",
        "title": "DeepTutor vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-nanobot.json",
        "title": "DeepTutor vs nanobot",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/del-vs-learnharness.json",
        "title": "Del vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/del-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/folk-nozomio-vs-learnharness.json",
        "title": "folk vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/folk-nozomio-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gaia-vs-learnharness.json",
        "title": "GAIA vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/gaia-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-spark-vs-learnharness.json",
        "title": "Gemini Spark vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/gemini-spark-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grok-bot-vs-learnharness.json",
        "title": "Grok Bot vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/grok-bot-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hark-pro-vs-learnharness.json",
        "title": "Hark Pro vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/hark-pro-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hark-pro-vs-nanobot.json",
        "title": "Hark Pro vs nanobot",
        "url": "https://www.anchorterminal.com/compare/hark-pro-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/haven-vs-learnharness.json",
        "title": "Haven vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/haven-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hermes-agent-vs-learnharness.json",
        "title": "Hermes Agent vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/hermes-agent-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hirealpha-vs-learnharness.json",
        "title": "HireAlpha vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/hirealpha-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/instinct-vs-learnharness.json",
        "title": "Instinct vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/instinct-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ironclaw-vs-learnharness.json",
        "title": "IronClaw vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/ironclaw-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-leon.json",
        "title": "LearnHarness vs Leon",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-leon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-lindy.json",
        "title": "LearnHarness vs Lindy",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-lindy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-lobby-os.json",
        "title": "LearnHarness vs Lobby",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-lobby-os"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-nanoclaw.json",
        "title": "LearnHarness vs NanoClaw",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-nanoclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-natura.json",
        "title": "LearnHarness vs Natura tinyNature",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-natura"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-openai-dots.json",
        "title": "LearnHarness vs Dots",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-openai-dots"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-openclaw.json",
        "title": "LearnHarness vs OpenClaw",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-openclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-openduet.json",
        "title": "LearnHarness vs OpenDuet",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-openduet"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-openinstinct.json",
        "title": "LearnHarness vs OpenInstinct",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-openinstinct"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-orbits.json",
        "title": "LearnHarness vs Orbits",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-orbits"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-orchid-ai.json",
        "title": "LearnHarness vs Orchid",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-orchid-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-pally.json",
        "title": "LearnHarness vs Pally",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-pally"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-picoclaw.json",
        "title": "LearnHarness vs PicoClaw",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-picoclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-poke.json",
        "title": "LearnHarness vs Poke",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-poke"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-qwenpaw.json",
        "title": "LearnHarness vs QwenPaw",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-qwenpaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-szn.json",
        "title": "LearnHarness vs szn",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-szn"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-tab-bot.json",
        "title": "LearnHarness vs Tab",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-tab-bot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-talorys.json",
        "title": "LearnHarness vs Talorys",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-talorys"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-tasker-ai.json",
        "title": "LearnHarness vs Tasker AI",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-tasker-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-tomo.json",
        "title": "LearnHarness vs Tomo",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-tomo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-town.json",
        "title": "LearnHarness vs Town",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-wajo.json",
        "title": "LearnHarness vs Wajo (Fo)",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-wajo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-zapia.json",
        "title": "LearnHarness vs Zapia",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-zapia"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-zeroclaw.json",
        "title": "LearnHarness vs ZeroClaw",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-zeroclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-zo-computer.json",
        "title": "LearnHarness vs Zo Computer",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-zo-computer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-talorys.json",
        "title": "nanobot vs Talorys",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-talorys"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lobby-os-vs-nanobot.json",
        "title": "Lobby vs nanobot",
        "url": "https://www.anchorterminal.com/compare/lobby-os-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-natura.json",
        "title": "nanobot vs Natura tinyNature",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-natura"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-pally.json",
        "title": "nanobot vs Pally",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-pally"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-tomo.json",
        "title": "nanobot vs Tomo",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-tomo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nanobot-vs-wajo.json",
        "title": "nanobot vs Wajo (Fo)",
        "url": "https://www.anchorterminal.com/compare/nanobot-vs-wajo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-learnharness.json",
        "title": "AstrBot vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-learnharness"
      }
    ],
    "scores": [
      {
        "by": 14,
        "edge": "nanobot",
        "key": "reliability",
        "learnharness": 56,
        "name": "Reliability",
        "nanobot": 70,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 14,
        "edge": "nanobot",
        "key": "schema",
        "learnharness": 63,
        "name": "Schema \u0026 documentation",
        "nanobot": 77,
        "weight": 13
      },
      {
        "by": 14,
        "edge": "nanobot",
        "key": "ergonomics",
        "learnharness": 60,
        "name": "Agent ergonomics",
        "nanobot": 74,
        "weight": 13
      },
      {
        "by": 11,
        "edge": "nanobot",
        "key": "security",
        "learnharness": 52,
        "name": "Security \u0026 auth",
        "nanobot": 63,
        "weight": 14
      },
      {
        "by": 0,
        "edge": "",
        "key": "payments",
        "learnharness": 60,
        "name": "Payments \u0026 pricing",
        "nanobot": 60,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 11,
        "edge": "nanobot",
        "key": "maintenance",
        "learnharness": 71,
        "name": "Maintenance \u0026 community",
        "nanobot": 82,
        "weight": 7
      },
      {
        "by": 6,
        "edge": "learnharness",
        "key": "transparency",
        "learnharness": 60,
        "name": "Transparency \u0026 trust",
        "nanobot": 54,
        "weight": 7
      }
    ],
    "summary": "nanobot scores 63 (B) on agent readiness against LearnHarness's 59.3 (C), and leads in 5 of 7 scored categories. LearnHarness leads on transparency \u0026 trust. Both do assistants that remember you.",
    "tutorials": [],
    "verdicts": {
      "learnharness": "The in-app agent reads files but cannot change them or run commands, and a bundled skill gives other agents a documented read-only view of sessions and the knowledge graph. The project is 14 days old at 0.4.0, its file reads reach the whole home directory without approval, and it has no security policy.",
      "nanobot": "nanobot runs on the owner's machine under the MIT licence, with no telemetry found in its source and memory kept as files the owner can read and restore. No per-action approval step was found, and the shell sandbox and workspace restriction are off by default. Five security advisories were published between March and September 2026, all with fixes."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/learnharness-vs-nanobot",
    "json": "https://www.anchorterminal.com/compare/learnharness-vs-nanobot.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/learnharness-vs-nanobot.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/learnharness-vs-nanobot.min.md"
  },
  "markdown": "nanobot scores 63 (B) on agent readiness against LearnHarness's 59.3 (C), and leads in 5 of 7 scored categories. LearnHarness leads on transparency \u0026 trust. Both do assistants that remember you.\n\n- LearnHarness: grade C, 59.3/100, rank #648 of 1239. Markdown https://www.anchorterminal.com/tools/learnharness.md · JSON https://www.anchorterminal.com/api/v1/tools/learnharness.json\n- nanobot: grade B, 63/100, rank #483 of 1239. Markdown https://www.anchorterminal.com/tools/nanobot.md · JSON https://www.anchorterminal.com/api/v1/tools/nanobot.json\n- Best AI personal assistants that act for one person: https://www.anchorterminal.com/best/personal-assistants/index.md\n- All 1196 assistants comparisons: https://www.anchorterminal.com/compare/personal-assistants/index.md\n\n## Which one, for what\n\n### LearnHarness (C)\n\nGood for: A tutor for one learner that keeps a local record of sessions and a graph of propositions and reasoning chains.\n\nAhead on:\n- Transparency \u0026 trust, 60 against 54\n\nAlso in its favour:\n- Free to start without a card\n- No incidents deducted, where nanobot loses 6 points for them\n\nWatch for: The read, ls, find and grep tools resolve against the home directory with no allow list, and their output goes to the model provider\n\n### nanobot (B)\n\nGood for: A technical owner who wants an assistant on their own machine across many chat apps, with file-based memory and a free choice of model.\n\nAhead on:\n- Reliability, 70 against 56\n- Schema \u0026 documentation, 77 against 63\n- Agent ergonomics, 74 against 60\n- Security \u0026 auth, 63 against 52\n- Maintenance \u0026 community, 82 against 71\n\nWatch for: No per-action approval was found in the docs or source. The agent sends messages, runs shell commands and edits files without asking\n\n\n## Score by category\n\n| Category | Weight | LearnHarness | nanobot | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 56 | 70 | nanobot +14 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 63 | 77 | nanobot +14 |\n| Agent ergonomics | 13% (16.2 this run) | 60 | 74 | nanobot +14 |\n| Security \u0026 auth | 14% (17.5 this run) | 52 | 63 | nanobot +11 |\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) | 71 | 82 | nanobot +11 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 60 | 54 | LearnHarness +6 |\n| Negative events | ≤15 | 0 | -6 | |\n| **Total** | | **59.3 · C** | **63 · B** | |\n\n## Facts side by side\n\n| Fact | LearnHarness | nanobot |\n| --- | --- | --- |\n| Kind | Agent harness | Agent harness |\n| Vendor | Amos Blomqvist | HKUDS |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | None | None |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | AGPL-3.0-only | MIT |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| Last release | 2026-10-29 | 2026-09-15 |\n| Terms last updated | no date given | no document linked |\n| Privacy policy last updated | no document linked | no document linked |\n| Customer content may train models | not found in the text |  |\n| Terms restrict automated access | not found in the text |  |\n| Terms restrict benchmarking | not found in the text |  |\n| Terms or service can change without notice | not found in the text |  |\n| Arbitration or class-action waiver | not found in the text |  |\n| Popularity | 4.2k stars | 49k stars |\n| Agent reviews | none | 2.8/5 (4) |\n\n## Verdicts\n\n**LearnHarness.** The in-app agent reads files but cannot change them or run commands, and a bundled skill gives other agents a documented read-only view of sessions and the knowledge graph. The project is 14 days old at 0.4.0, its file reads reach the whole home directory without approval, and it has no security policy.\n\n**nanobot.** nanobot runs on the owner's machine under the MIT licence, with no telemetry found in its source and memory kept as files the owner can read and restore. No per-action approval step was found, and the shell sandbox and workspace restriction are off by default. Five security advisories were published between March and September 2026, all with fixes.\n\n## Before you call either\n\n### LearnHarness\n\n1. Use the bundled skill (`skills/learnharness/SKILL.md`) to read a learner's record. It needs Python 3.10 or later and writes nothing\n2. Pass `--format json` before the subcommand, for example `python3 -B scripts/graph.py --format json propositions`\n3. Treat stored answer keys and teacher prose as model-authored. A proposition in the graph is not evidence the learner understood it\n4. Do not read `auth.json`, which sits one folder above the data folder and holds provider keys in plain text\n5. Close the app or re-read when a stable snapshot matters. The readers do not lock files while the app writes\n\n### nanobot\n\n1. Set `tools.restrictToWorkspace` to true and `tools.exec.sandbox` to `bwrap` or `seatbelt` before giving it real accounts. Both are off by default\n2. Run 0.3.0 or later. Earlier versions carry the published SSRF flaw in web fetch (GHSA-vc5v-6vwm-wf9m)\n3. Keep `allowFrom` narrow on every channel and never set `[\"*\"]` on Email, which has no pairing\n4. Write secrets as `${VAR}` references in `~/.nanobot/config.json`. Plain values are stored in clear text\n5. Use `nanobot -m \"...\"` for a one-shot run, and keep `nanobot gateway` running for channels, schedules and heartbeat\n\n## Questions\n\n### Which is better for AI agents, LearnHarness or nanobot?\n\nnanobot scores 63 (B) on agent readiness against LearnHarness's 59.3 (C), and leads in 5 of 7 scored categories. LearnHarness leads on transparency \u0026 trust.\n\n### Are LearnHarness and nanobot open source?\n\nYes. LearnHarness is open source (AGPL-3.0-only). nanobot is open source (MIT).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/learnharness-vs-nanobot.json, and with the fewest tokens: https://www.anchorterminal.com/compare/learnharness-vs-nanobot.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"learnharness\", \"b\": \"nanobot\"}`. From a terminal: `anchor compare learnharness nanobot`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/learnharness.json and https://www.anchorterminal.com/api/v1/tools/nanobot.json\n\n## Other comparisons with LearnHarness or nanobot\n\n- [asaply vs nanobot](https://www.anchorterminal.com/compare/asaply-vs-nanobot.md)\n- [Asmi vs nanobot](https://www.anchorterminal.com/compare/asmi-vs-nanobot.md)\n- [Boba vs nanobot](https://www.anchorterminal.com/compare/boba-vs-nanobot.md)\n- [Brea vs nanobot](https://www.anchorterminal.com/compare/brea-vs-nanobot.md)\n- [Del vs nanobot](https://www.anchorterminal.com/compare/del-vs-nanobot.md)\n- [HireAlpha vs nanobot](https://www.anchorterminal.com/compare/hirealpha-vs-nanobot.md)\n- [nanobot vs OpenInstinct](https://www.anchorterminal.com/compare/nanobot-vs-openinstinct.md)\n- [nanobot vs Orbits](https://www.anchorterminal.com/compare/nanobot-vs-orbits.md)\n- [nanobot vs Orchid](https://www.anchorterminal.com/compare/nanobot-vs-orchid-ai.md)\n- [nanobot vs szn](https://www.anchorterminal.com/compare/nanobot-vs-szn.md)\n- [nanobot vs Tab](https://www.anchorterminal.com/compare/nanobot-vs-tab-bot.md)\n- [nanobot vs Zapia](https://www.anchorterminal.com/compare/nanobot-vs-zapia.md)\n- [AstrBot vs nanobot](https://www.anchorterminal.com/compare/astrbot-vs-nanobot.md)\n- [Boski vs nanobot](https://www.anchorterminal.com/compare/boski-vs-nanobot.md)\n- [Caddy vs nanobot](https://www.anchorterminal.com/compare/caddy-app-vs-nanobot.md)\n- [Claude Duet vs nanobot](https://www.anchorterminal.com/compare/claude-duet-vs-nanobot.md)\n- [CowAgent vs nanobot](https://www.anchorterminal.com/compare/cowagent-vs-nanobot.md)\n- [folk vs nanobot](https://www.anchorterminal.com/compare/folk-nozomio-vs-nanobot.md)\n- [GAIA vs nanobot](https://www.anchorterminal.com/compare/gaia-vs-nanobot.md)\n- [Gemini Spark vs nanobot](https://www.anchorterminal.com/compare/gemini-spark-vs-nanobot.md)\n- [Grok Bot vs nanobot](https://www.anchorterminal.com/compare/grok-bot-vs-nanobot.md)\n- [Haven vs nanobot](https://www.anchorterminal.com/compare/haven-vs-nanobot.md)\n- [Hermes Agent vs nanobot](https://www.anchorterminal.com/compare/hermes-agent-vs-nanobot.md)\n- [Instinct vs nanobot](https://www.anchorterminal.com/compare/instinct-vs-nanobot.md)\n- [IronClaw vs nanobot](https://www.anchorterminal.com/compare/ironclaw-vs-nanobot.md)\n- [Leon vs nanobot](https://www.anchorterminal.com/compare/leon-vs-nanobot.md)\n- [Lindy vs nanobot](https://www.anchorterminal.com/compare/lindy-vs-nanobot.md)\n- [nanobot vs NanoClaw](https://www.anchorterminal.com/compare/nanobot-vs-nanoclaw.md)\n- [nanobot vs Dots](https://www.anchorterminal.com/compare/nanobot-vs-openai-dots.md)\n- [nanobot vs OpenClaw](https://www.anchorterminal.com/compare/nanobot-vs-openclaw.md)\n- [nanobot vs OpenDuet](https://www.anchorterminal.com/compare/nanobot-vs-openduet.md)\n- [nanobot vs PicoClaw](https://www.anchorterminal.com/compare/nanobot-vs-picoclaw.md)\n- [nanobot vs Poke](https://www.anchorterminal.com/compare/nanobot-vs-poke.md)\n- [nanobot vs QwenPaw](https://www.anchorterminal.com/compare/nanobot-vs-qwenpaw.md)\n- [nanobot vs Tasker AI](https://www.anchorterminal.com/compare/nanobot-vs-tasker-ai.md)\n- [nanobot vs Town](https://www.anchorterminal.com/compare/nanobot-vs-town.md)\n- [nanobot vs ZeroClaw](https://www.anchorterminal.com/compare/nanobot-vs-zeroclaw.md)\n- [nanobot vs Zo Computer](https://www.anchorterminal.com/compare/nanobot-vs-zo-computer.md)\n- [asaply vs LearnHarness](https://www.anchorterminal.com/compare/asaply-vs-learnharness.md)\n- [Asmi vs LearnHarness](https://www.anchorterminal.com/compare/asmi-vs-learnharness.md)\n- [Atticus vs LearnHarness](https://www.anchorterminal.com/compare/atticus-vs-learnharness.md)\n- [Atticus vs nanobot](https://www.anchorterminal.com/compare/atticus-vs-nanobot.md)\n- [Boba vs LearnHarness](https://www.anchorterminal.com/compare/boba-vs-learnharness.md)\n- [Boski vs LearnHarness](https://www.anchorterminal.com/compare/boski-vs-learnharness.md)\n- [Brea vs LearnHarness](https://www.anchorterminal.com/compare/brea-vs-learnharness.md)\n- [Caddy vs LearnHarness](https://www.anchorterminal.com/compare/caddy-app-vs-learnharness.md)\n- [Claude Duet vs LearnHarness](https://www.anchorterminal.com/compare/claude-duet-vs-learnharness.md)\n- [CowAgent vs LearnHarness](https://www.anchorterminal.com/compare/cowagent-vs-learnharness.md)\n- [DeepTutor vs LearnHarness](https://www.anchorterminal.com/compare/deeptutor-vs-learnharness.md)\n- [DeepTutor vs nanobot](https://www.anchorterminal.com/compare/deeptutor-vs-nanobot.md)\n- [Del vs LearnHarness](https://www.anchorterminal.com/compare/del-vs-learnharness.md)\n- [folk vs LearnHarness](https://www.anchorterminal.com/compare/folk-nozomio-vs-learnharness.md)\n- [GAIA vs LearnHarness](https://www.anchorterminal.com/compare/gaia-vs-learnharness.md)\n- [Gemini Spark vs LearnHarness](https://www.anchorterminal.com/compare/gemini-spark-vs-learnharness.md)\n- [Grok Bot vs LearnHarness](https://www.anchorterminal.com/compare/grok-bot-vs-learnharness.md)\n- [Hark Pro vs LearnHarness](https://www.anchorterminal.com/compare/hark-pro-vs-learnharness.md)\n- [Hark Pro vs nanobot](https://www.anchorterminal.com/compare/hark-pro-vs-nanobot.md)\n- [Haven vs LearnHarness](https://www.anchorterminal.com/compare/haven-vs-learnharness.md)\n- [Hermes Agent vs LearnHarness](https://www.anchorterminal.com/compare/hermes-agent-vs-learnharness.md)\n- [HireAlpha vs LearnHarness](https://www.anchorterminal.com/compare/hirealpha-vs-learnharness.md)\n- [Instinct vs LearnHarness](https://www.anchorterminal.com/compare/instinct-vs-learnharness.md)\n- [IronClaw vs LearnHarness](https://www.anchorterminal.com/compare/ironclaw-vs-learnharness.md)\n- [LearnHarness vs Leon](https://www.anchorterminal.com/compare/learnharness-vs-leon.md)\n- [LearnHarness vs Lindy](https://www.anchorterminal.com/compare/learnharness-vs-lindy.md)\n- [LearnHarness vs Lobby](https://www.anchorterminal.com/compare/learnharness-vs-lobby-os.md)\n- [LearnHarness vs NanoClaw](https://www.anchorterminal.com/compare/learnharness-vs-nanoclaw.md)\n- [LearnHarness vs Natura tinyNature](https://www.anchorterminal.com/compare/learnharness-vs-natura.md)\n- [LearnHarness vs Dots](https://www.anchorterminal.com/compare/learnharness-vs-openai-dots.md)\n- [LearnHarness vs OpenClaw](https://www.anchorterminal.com/compare/learnharness-vs-openclaw.md)\n- [LearnHarness vs OpenDuet](https://www.anchorterminal.com/compare/learnharness-vs-openduet.md)\n- [LearnHarness vs OpenInstinct](https://www.anchorterminal.com/compare/learnharness-vs-openinstinct.md)\n- [LearnHarness vs Orbits](https://www.anchorterminal.com/compare/learnharness-vs-orbits.md)\n- [LearnHarness vs Orchid](https://www.anchorterminal.com/compare/learnharness-vs-orchid-ai.md)\n- [LearnHarness vs Pally](https://www.anchorterminal.com/compare/learnharness-vs-pally.md)\n- [LearnHarness vs PicoClaw](https://www.anchorterminal.com/compare/learnharness-vs-picoclaw.md)\n- [LearnHarness vs Poke](https://www.anchorterminal.com/compare/learnharness-vs-poke.md)\n- [LearnHarness vs QwenPaw](https://www.anchorterminal.com/compare/learnharness-vs-qwenpaw.md)\n- [LearnHarness vs szn](https://www.anchorterminal.com/compare/learnharness-vs-szn.md)\n- [LearnHarness vs Tab](https://www.anchorterminal.com/compare/learnharness-vs-tab-bot.md)\n- [LearnHarness vs Talorys](https://www.anchorterminal.com/compare/learnharness-vs-talorys.md)\n- [LearnHarness vs Tasker AI](https://www.anchorterminal.com/compare/learnharness-vs-tasker-ai.md)\n- [LearnHarness vs Tomo](https://www.anchorterminal.com/compare/learnharness-vs-tomo.md)\n- [LearnHarness vs Town](https://www.anchorterminal.com/compare/learnharness-vs-town.md)\n- [LearnHarness vs Wajo (Fo)](https://www.anchorterminal.com/compare/learnharness-vs-wajo.md)\n- [LearnHarness vs Zapia](https://www.anchorterminal.com/compare/learnharness-vs-zapia.md)\n- [LearnHarness vs ZeroClaw](https://www.anchorterminal.com/compare/learnharness-vs-zeroclaw.md)\n- [LearnHarness vs Zo Computer](https://www.anchorterminal.com/compare/learnharness-vs-zo-computer.md)\n- [nanobot vs Talorys](https://www.anchorterminal.com/compare/nanobot-vs-talorys.md)\n- [Lobby vs nanobot](https://www.anchorterminal.com/compare/lobby-os-vs-nanobot.md)\n- [nanobot vs Natura tinyNature](https://www.anchorterminal.com/compare/nanobot-vs-natura.md)\n- [nanobot vs Pally](https://www.anchorterminal.com/compare/nanobot-vs-pally.md)\n- [nanobot vs Tomo](https://www.anchorterminal.com/compare/nanobot-vs-tomo.md)\n- [nanobot vs Wajo (Fo)](https://www.anchorterminal.com/compare/nanobot-vs-wajo.md)\n- [AstrBot vs LearnHarness](https://www.anchorterminal.com/compare/astrbot-vs-learnharness.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-31",
    "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": "LearnHarness vs nanobot",
        "url": ""
      }
    ],
    "description": "nanobot scores 63 (B) to LearnHarness's 59.3 (C) for assistants that remember you. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "LearnHarness C 59.3",
      "nanobot B 63",
      "scores"
    ],
    "h1": "LearnHarness vs nanobot",
    "image": "https://www.anchorterminal.com/assets/og/compare-learnharness-vs-nanobot.png",
    "path": "/compare/learnharness-vs-nanobot",
    "published": "2026-10-01",
    "section": "tools",
    "title": "LearnHarness vs nanobot for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-30",
    "url": "https://www.anchorterminal.com/compare/learnharness-vs-nanobot"
  },
  "tokens": {
    "markdown": 3900,
    "slim": 630
  },
  "version": 1
}
