{
  "data": {
    "a": {
      "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": 62.4,
        "grade": "B",
        "agentReady": false,
        "rank": 446,
        "ranked": true,
        "rankOf": 1010,
        "categoryRank": 6,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 82,
          "payments": 60,
          "reliability": 70,
          "schema": 77,
          "security": 63,
          "transparency": 48
        },
        "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": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62.4
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 82,
          "payments": 60,
          "reliability": 70,
          "schema": 77,
          "security": 63,
          "transparency": 69
        },
        "provenanceScore": 27
      },
      "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": 27
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/nanobot.json",
      "live": {
        "slug": "nanobot",
        "versions": [
          {
            "registry": "github",
            "name": "HKUDS/nanobot",
            "version": "v0.3.5",
            "released": "2026-09-15",
            "seenAt": "2026-10-13T23:11:51.769338963Z"
          },
          {
            "registry": "pypi",
            "name": "nanobot-ai",
            "version": "0.3.5",
            "released": "2026-09-15",
            "seenAt": "2026-10-13T23:11:51.588839374Z"
          }
        ],
        "githubStars": 48997,
        "pypiWeekly": 19109,
        "securityTxt": {
          "url": "https://nanobot.wiki/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-13T15:45:28.852909109Z"
        },
        "llmsTxt": {
          "url": "https://nanobot.wiki/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-13T14:12:04.100787545Z"
        },
        "updatedAt": "2026-10-13T23:11:51.769338963Z"
      }
    },
    "answer": "nanobot scores 62.4 (B) on agent readiness against Town's 48.7 (D), and leads in 5 of 7 scored categories. Town leads on security \u0026 auth and transparency \u0026 trust.",
    "b": {
      "slug": "town",
      "name": "Town",
      "vendor": "Town.com, Inc.",
      "vendorUrl": "https://www.town.com",
      "kind": "platform",
      "category": "personal-assistants",
      "summary": "Town is a hosted AI assistant, called a Townie, with its own email address. It works across the owner's email, calendar and connected work apps, runs scheduled routines, and answers by email, text, WhatsApp, Telegram, the web or iOS.",
      "url": "https://www.anchorterminal.com/tools/town",
      "markdownUrl": "https://www.anchorterminal.com/tools/town.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/town.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/town.json",
      "license": "Closed service under Town's Terms of Service (Town.com, Inc., updated 21 July 2026).",
      "transports": [
        "http"
      ],
      "packages": [],
      "auth": "mixed",
      "authNotes": "People sign up at town.com with account credentials or a linked Google or single sign-on account (https://www.town.com/terms-of-service). A routine can expose its own webhook URL, called with a bearer secret that is shown once and can be rotated. Town answers a wrong secret, a disabled endpoint and a missing one with the same 404 (https://www.town.com/docs/routines/stock-routines/webhooks).",
      "pricing": "freemium",
      "pricingNotes": "Free at $0 with no credit card, 30 chat messages a month, the weekly briefing and a 7-day Pro trial on signup. Starter is $15 a month billed monthly with 1,250 credits. Pro ($49), Power ($99) and Power Plus ($199) are monthly prices at the billed-annually rate, and monthly billing is \"available at a slightly higher rate\". Team is $59 and Team Plus $149 a seat a month. Credits past the allotment bill at $0.044 (Pro), $0.038 (Power, Team), $0.032 (Power Plus) and $0.030 (Team Plus), with an optional monthly spend cap (https://www.town.com/pricing and https://www.town.com/docs/billing/plans, checked 14 October 2026).",
      "priceSummary": "$15 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 found on town.com's pricing, docs and terms, checked 14 October 2026.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://www.town.com/docs",
      "capabilities": [
        "assistant.proactive",
        "assistant.messaging",
        "assistant.accounts",
        "assistant.memory",
        "mailbox.read",
        "mailbox.send",
        "calendar.write",
        "messaging.whatsapp",
        "messaging.rcs",
        "messaging.inbound",
        "email.inbound",
        "voice.calls",
        "memory.user",
        "tasks.create",
        "notify.push",
        "agent.multi-agent",
        "agent.mcp-client"
      ],
      "tags": [
        "hosted",
        "official",
        "closed-source",
        "freemium",
        "free-tier",
        "no-card",
        "ios",
        "soc2",
        "webhooks"
      ],
      "lastRelease": "2026-10-10",
      "graded": true,
      "disclosure": "Town competes with LocalGhost, which Anchor Terminal's founder builds. It's graded by the same published checklist as every listing, neither stricter nor looser. Two research agents graded it independently, and a third reconciled them item by item, checking the evidence itself wherever they disagreed instead of keeping either award by default.",
      "competesWith": "localghost",
      "anchor": {
        "graded": true,
        "score": 48.7,
        "grade": "D",
        "agentReady": false,
        "rank": 834,
        "ranked": true,
        "rankOf": 1010,
        "categoryRank": 12,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 49,
          "maintenance": 60,
          "payments": 30,
          "reliability": 35,
          "schema": 33,
          "security": 79,
          "transparency": 63
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "Town is a hosted assistant that works across the owner's mail, calendar and work apps, and other systems can start its routines through per-routine webhooks with rotatable secrets, idempotency keys and documented errors. A caller can't read a run's result. The privacy policy and trust page disagree on whether training is on by default.",
        "bestFor": "An owner who wants a mail and calendar assistant whose routines other systems can trigger.",
        "disclosure": "Town competes with LocalGhost, which Anchor Terminal's founder builds. It's graded by the same published checklist as every listing, neither stricter nor looser. Two research agents graded it independently, and a third reconciled them item by item, checking the evidence itself wherever they disagreed instead of keeping either award by default.",
        "strengths": [
          "Per-routine webhook secrets, shown once and rotatable, with an X-Town-Idempotency-Key header and six documented responses.",
          "Routines run in autonomous, approval-required or read-only mode, with per-tool overrides and account scope defaulting to the trigger account.",
          "Webhook payloads are framed as untrusted data, and Town can block a webhook routine that combines untrusted input with autonomous sending.",
          "SOC 2 Type 2 audited per the trust page, with a security@corp.town.com reporting address.",
          "Free plan at $0 with no credit card, and a dated subprocessor list naming model providers."
        ],
        "weaknesses": [
          "The privacy policy describes training with an opt-out and the trust page says training is opt-in.",
          "The trust page says Town never sends without the owner's OK, while the docs describe autonomous routines and an Allow all actions session mode.",
          "A webhook call returns only 202, so the caller can't read what the routine did.",
          "No status page, published webhook rate limit or SLA found."
        ],
        "agentNotes": [
          "Start a Town routine with POST to its webhook URL, Authorization Bearer whsec_ secret, and application/json or text/plain. Expect 202 only.",
          "Send X-Town-Idempotency-Key with a stable event id on every retry so Town doesn't start a second run.",
          "Treat 404 as wrong secret, disabled endpoint or missing endpoint alike, and ask the owner to check Routine Settings rather than retrying.",
          "Send account_email only if the owner allowed the override. It must match a connected account in full and can't widen the routine's scope.",
          "Ask the owner to keep routines that act on webhook input in approval-required mode, as Town's own docs advise."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 48.7
          }
        ],
        "editorialScores": {
          "ergonomics": 49,
          "maintenance": 60,
          "payments": 30,
          "reliability": 35,
          "schema": 33,
          "security": 79,
          "transparency": 50
        },
        "provenanceScore": 76
      },
      "letme": {
        "capability": "https://letme.dev/assistant.proactive",
        "tool": "https://letme.dev/town"
      },
      "area": "frameworks",
      "unitPrices": [
        {
          "item": "Town Starter",
          "unit": "month",
          "usd": 15,
          "note": "Billed monthly, 1,250 credits. Checked 14 October 2026."
        },
        {
          "item": "Town Pro",
          "unit": "month",
          "usd": 49,
          "note": "Billed annually, 5,000 credits. Monthly billing costs more."
        },
        {
          "item": "Town Power",
          "unit": "month",
          "usd": 99,
          "note": "Billed annually, 12,000 credits."
        },
        {
          "item": "Town Power Plus",
          "unit": "month",
          "usd": 199,
          "note": "40,000 credits."
        },
        {
          "item": "Town Team",
          "unit": "seat-month",
          "usd": 59,
          "note": "6,000 credits a seat, pooled."
        },
        {
          "item": "Town Pro overage",
          "unit": "credit",
          "usd": 0.044,
          "note": "Per credit past the plan allotment."
        }
      ],
      "provenance": {
        "legalEntity": "Town.com, Inc.",
        "domain": "town.com",
        "domainRegistered": "1996-11-13",
        "endpointOnVendorDomain": null,
        "terms": "https://www.town.com/terms-of-service",
        "privacy": "https://www.town.com/privacy-policy",
        "statusPage": "",
        "changelog": "https://www.town.com/updates",
        "securityTxt": "unknown",
        "checked": "2026-10-14",
        "notes": [
          "town.com's robots.txt gives ClaudeBot an allow list of named pages and disallows everything else, so only listed pages were read. security.txt and llms.txt are not on the list and were not requested.",
          "The terms name Town.com, Inc. and were updated on 21 July 2026. Legal contact legal@corp.town.com, support support@corp.town.com.",
          "No status page was found on the pages read.",
          "Webhook URLs are created per routine on Town's own service; their host is not shown in the docs.",
          "RDAP gives a registration date of 1996-11-13 for town.com, which predates the company."
        ],
        "score": 76
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/town.json"
    },
    "facts": [
      {
        "a": "Agent harness",
        "b": "Platform",
        "name": "Kind"
      },
      {
        "a": "HKUDS",
        "b": "Town.com, Inc.",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT",
        "b": "Closed service under Town's Terms of Service (Town.com, Inc., updated 21 July 2026).",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-15",
        "b": "2026-10-10",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "",
        "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": "49k stars",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "nanobot scores 62.4 (B) on agent readiness against Town's 48.7 (D), and leads in 5 of 7 scored categories. Town leads on security \u0026 auth and transparency \u0026 trust.",
        "question": "Which is better for AI agents, nanobot or Town?"
      },
      {
        "answer": "nanobot is open source (MIT). No open-source release is listed for Town.",
        "question": "Are nanobot and Town open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 70 against 35",
          "Schema \u0026 documentation, 77 against 33",
          "Agent ergonomics, 74 against 49",
          "Payments \u0026 pricing, 60 against 30",
          "Maintenance \u0026 community, 82 against 60"
        ],
        "also": [
          "No key needed to call it",
          "Open source"
        ],
        "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"
      },
      {
        "aheadOn": [
          "Security \u0026 auth, 79 against 63",
          "Transparency \u0026 trust, 63 against 48"
        ],
        "also": [
          "Free to start without a card",
          "No incidents deducted, where nanobot loses 6 points for them"
        ],
        "goodFor": "An owner who wants a mail and calendar assistant whose routines other systems can trigger.",
        "slug": "town",
        "watchFor": "The privacy policy describes training with an opt-out and the trust page says training is opt-in."
      }
    ],
    "job": {
      "capability": "assistant.proactive",
      "name": "Proactive personal assistants"
    },
    "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/asaply-vs-town.json",
        "title": "asaply vs Town",
        "url": "https://www.anchorterminal.com/compare/asaply-vs-town"
      },
      {
        "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/asmi-vs-town.json",
        "title": "Asmi vs Town",
        "url": "https://www.anchorterminal.com/compare/asmi-vs-town"
      },
      {
        "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/boba-vs-town.json",
        "title": "Boba vs Town",
        "url": "https://www.anchorterminal.com/compare/boba-vs-town"
      },
      {
        "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/brea-vs-town.json",
        "title": "Brea vs Town",
        "url": "https://www.anchorterminal.com/compare/brea-vs-town"
      },
      {
        "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/del-vs-town.json",
        "title": "Del vs Town",
        "url": "https://www.anchorterminal.com/compare/del-vs-town"
      },
      {
        "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/hirealpha-vs-town.json",
        "title": "HireAlpha vs Town",
        "url": "https://www.anchorterminal.com/compare/hirealpha-vs-town"
      },
      {
        "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/openinstinct-vs-town.json",
        "title": "OpenInstinct vs Town",
        "url": "https://www.anchorterminal.com/compare/openinstinct-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/orbits-vs-town.json",
        "title": "Orbits vs Town",
        "url": "https://www.anchorterminal.com/compare/orbits-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/orchid-ai-vs-town.json",
        "title": "Orchid vs Town",
        "url": "https://www.anchorterminal.com/compare/orchid-ai-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/szn-vs-town.json",
        "title": "szn vs Town",
        "url": "https://www.anchorterminal.com/compare/szn-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/tab-bot-vs-town.json",
        "title": "Tab vs Town",
        "url": "https://www.anchorterminal.com/compare/tab-bot-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/town-vs-zapia.json",
        "title": "Town vs Zapia",
        "url": "https://www.anchorterminal.com/compare/town-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/astrbot-vs-town.json",
        "title": "AstrBot vs Town",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-town"
      },
      {
        "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/boski-vs-town.json",
        "title": "Boski vs Town",
        "url": "https://www.anchorterminal.com/compare/boski-vs-town"
      },
      {
        "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/caddy-app-vs-town.json",
        "title": "Caddy vs Town",
        "url": "https://www.anchorterminal.com/compare/caddy-app-vs-town"
      },
      {
        "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/cowagent-vs-town.json",
        "title": "CowAgent vs Town",
        "url": "https://www.anchorterminal.com/compare/cowagent-vs-town"
      },
      {
        "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/folk-nozomio-vs-town.json",
        "title": "folk vs Town",
        "url": "https://www.anchorterminal.com/compare/folk-nozomio-vs-town"
      },
      {
        "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/gaia-vs-town.json",
        "title": "GAIA vs Town",
        "url": "https://www.anchorterminal.com/compare/gaia-vs-town"
      },
      {
        "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/gemini-spark-vs-town.json",
        "title": "Gemini Spark vs Town",
        "url": "https://www.anchorterminal.com/compare/gemini-spark-vs-town"
      },
      {
        "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/grok-bot-vs-town.json",
        "title": "Grok Bot vs Town",
        "url": "https://www.anchorterminal.com/compare/grok-bot-vs-town"
      },
      {
        "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/haven-vs-town.json",
        "title": "Haven vs Town",
        "url": "https://www.anchorterminal.com/compare/haven-vs-town"
      },
      {
        "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/hermes-agent-vs-town.json",
        "title": "Hermes Agent vs Town",
        "url": "https://www.anchorterminal.com/compare/hermes-agent-vs-town"
      },
      {
        "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/instinct-vs-town.json",
        "title": "Instinct vs Town",
        "url": "https://www.anchorterminal.com/compare/instinct-vs-town"
      },
      {
        "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/ironclaw-vs-town.json",
        "title": "IronClaw vs Town",
        "url": "https://www.anchorterminal.com/compare/ironclaw-vs-town"
      },
      {
        "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/leon-vs-town.json",
        "title": "Leon vs Town",
        "url": "https://www.anchorterminal.com/compare/leon-vs-town"
      },
      {
        "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/lindy-vs-town.json",
        "title": "Lindy vs Town",
        "url": "https://www.anchorterminal.com/compare/lindy-vs-town"
      },
      {
        "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-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-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/nanoclaw-vs-town.json",
        "title": "NanoClaw vs Town",
        "url": "https://www.anchorterminal.com/compare/nanoclaw-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-dots-vs-town.json",
        "title": "Dots vs Town",
        "url": "https://www.anchorterminal.com/compare/openai-dots-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openclaw-vs-town.json",
        "title": "OpenClaw vs Town",
        "url": "https://www.anchorterminal.com/compare/openclaw-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/picoclaw-vs-town.json",
        "title": "PicoClaw vs Town",
        "url": "https://www.anchorterminal.com/compare/picoclaw-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/poke-vs-town.json",
        "title": "Poke vs Town",
        "url": "https://www.anchorterminal.com/compare/poke-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/qwenpaw-vs-town.json",
        "title": "QwenPaw vs Town",
        "url": "https://www.anchorterminal.com/compare/qwenpaw-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/town-vs-zeroclaw.json",
        "title": "Town vs ZeroClaw",
        "url": "https://www.anchorterminal.com/compare/town-vs-zeroclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/town-vs-zo-computer.json",
        "title": "Town vs Zo Computer",
        "url": "https://www.anchorterminal.com/compare/town-vs-zo-computer"
      },
      {
        "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/natura-vs-town.json",
        "title": "Natura tinyNature vs Town",
        "url": "https://www.anchorterminal.com/compare/natura-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pally-vs-town.json",
        "title": "Pally vs Town",
        "url": "https://www.anchorterminal.com/compare/pally-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/tomo-vs-town.json",
        "title": "Tomo vs Town",
        "url": "https://www.anchorterminal.com/compare/tomo-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/town-vs-wajo.json",
        "title": "Town vs Wajo (Fo)",
        "url": "https://www.anchorterminal.com/compare/town-vs-wajo"
      },
      {
        "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/talorys-vs-town.json",
        "title": "Talorys vs Town",
        "url": "https://www.anchorterminal.com/compare/talorys-vs-town"
      }
    ],
    "scores": [
      {
        "by": 35,
        "edge": "nanobot",
        "key": "reliability",
        "name": "Reliability",
        "nanobot": 70,
        "town": 35,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 44,
        "edge": "nanobot",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "nanobot": 77,
        "town": 33,
        "weight": 13
      },
      {
        "by": 25,
        "edge": "nanobot",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "nanobot": 74,
        "town": 49,
        "weight": 13
      },
      {
        "by": 16,
        "edge": "town",
        "key": "security",
        "name": "Security \u0026 auth",
        "nanobot": 63,
        "town": 79,
        "weight": 14
      },
      {
        "by": 30,
        "edge": "nanobot",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "nanobot": 60,
        "town": 30,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 22,
        "edge": "nanobot",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "nanobot": 82,
        "town": 60,
        "weight": 7
      },
      {
        "by": 15,
        "edge": "town",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "nanobot": 48,
        "town": 63,
        "weight": 7
      }
    ],
    "summary": "nanobot scores 62.4 (B) on agent readiness against Town's 48.7 (D), and leads in 5 of 7 scored categories. Town leads on security \u0026 auth and transparency \u0026 trust. Both do proactive personal assistants.",
    "verdicts": {
      "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.",
      "town": "Town is a hosted assistant that works across the owner's mail, calendar and work apps, and other systems can start its routines through per-routine webhooks with rotatable secrets, idempotency keys and documented errors. A caller can't read a run's result. The privacy policy and trust page disagree on whether training is on by default."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/nanobot-vs-town",
    "json": "https://www.anchorterminal.com/compare/nanobot-vs-town.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/nanobot-vs-town.md",
    "slim": "https://www.anchorterminal.com/compare/nanobot-vs-town.min.md"
  },
  "markdown": "nanobot scores 62.4 (B) on agent readiness against Town's 48.7 (D), and leads in 5 of 7 scored categories. Town leads on security \u0026 auth and transparency \u0026 trust. Both do proactive personal assistants.\n\n- nanobot: grade B, 62.4/100, rank #446 of 1010. Markdown https://www.anchorterminal.com/tools/nanobot.md · JSON https://www.anchorterminal.com/api/v1/tools/nanobot.json\n- Town: grade D, 48.7/100, rank #834 of 1010. Markdown https://www.anchorterminal.com/tools/town.md · JSON https://www.anchorterminal.com/api/v1/tools/town.json\n- Best AI personal assistants that act for one person: https://www.anchorterminal.com/best/personal-assistants/index.md\n- All 834 assistants comparisons: https://www.anchorterminal.com/compare/personal-assistants/index.md\n\n## Which one, for what\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 35\n- Schema \u0026 documentation, 77 against 33\n- Agent ergonomics, 74 against 49\n- Payments \u0026 pricing, 60 against 30\n- Maintenance \u0026 community, 82 against 60\n\nAlso in its favour:\n- No key needed to call it\n- Open source\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### Town (D)\n\nGood for: An owner who wants a mail and calendar assistant whose routines other systems can trigger.\n\nAhead on:\n- Security \u0026 auth, 79 against 63\n- Transparency \u0026 trust, 63 against 48\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 privacy policy describes training with an opt-out and the trust page says training is opt-in.\n\n\n## Score by category\n\n| Category | Weight | nanobot | Town | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 70 | 35 | nanobot +35 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 77 | 33 | nanobot +44 |\n| Agent ergonomics | 13% (16.2 this run) | 74 | 49 | nanobot +25 |\n| Security \u0026 auth | 14% (17.5 this run) | 63 | 79 | Town +16 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 30 | nanobot +30 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 82 | 60 | nanobot +22 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 48 | 63 | Town +15 |\n| Negative events | ≤15 | -6 | 0 | |\n| **Total** | | **62.4 · B** | **48.7 · D** | |\n\n## Facts side by side\n\n| Fact | nanobot | Town |\n| --- | --- | --- |\n| Kind | Agent harness | Platform |\n| Vendor | HKUDS | Town.com, Inc. |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  | HTTP |\n| Auth | None | OAuth or key |\n| Pricing | Free | Freemium |\n| x402 | no | no |\n| Licence | MIT | Closed service under Town's Terms of Service (Town.com, Inc., updated 21 July 2026). |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | no |\n| Last release | 2026-09-15 | 2026-10-10 |\n| Terms last updated | no document linked |  |\n| Privacy policy last updated | 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 | 49k stars | none |\n\n## Verdicts\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**Town.** Town is a hosted assistant that works across the owner's mail, calendar and work apps, and other systems can start its routines through per-routine webhooks with rotatable secrets, idempotency keys and documented errors. A caller can't read a run's result. The privacy policy and trust page disagree on whether training is on by default.\n\n## Before you call either\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### Town\n\n1. Start a Town routine with POST to its webhook URL, Authorization Bearer whsec_ secret, and application/json or text/plain. Expect 202 only.\n2. Send X-Town-Idempotency-Key with a stable event id on every retry so Town doesn't start a second run.\n3. Treat 404 as wrong secret, disabled endpoint or missing endpoint alike, and ask the owner to check Routine Settings rather than retrying.\n4. Send account_email only if the owner allowed the override. It must match a connected account in full and can't widen the routine's scope.\n5. Ask the owner to keep routines that act on webhook input in approval-required mode, as Town's own docs advise.\n\n## Questions\n\n### Which is better for AI agents, nanobot or Town?\n\nnanobot scores 62.4 (B) on agent readiness against Town's 48.7 (D), and leads in 5 of 7 scored categories. Town leads on security \u0026 auth and transparency \u0026 trust.\n\n### Are nanobot and Town open source?\n\nnanobot is open source (MIT). No open-source release is listed for Town.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/nanobot-vs-town.json, and with the fewest tokens: https://www.anchorterminal.com/compare/nanobot-vs-town.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"nanobot\", \"b\": \"town\"}`. From a terminal: `anchor compare nanobot town`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/nanobot.json and https://www.anchorterminal.com/api/v1/tools/town.json\n\n## Other comparisons with nanobot or Town\n\n- [asaply vs nanobot](https://www.anchorterminal.com/compare/asaply-vs-nanobot.md)\n- [asaply vs Town](https://www.anchorterminal.com/compare/asaply-vs-town.md)\n- [Asmi vs nanobot](https://www.anchorterminal.com/compare/asmi-vs-nanobot.md)\n- [Asmi vs Town](https://www.anchorterminal.com/compare/asmi-vs-town.md)\n- [Boba vs nanobot](https://www.anchorterminal.com/compare/boba-vs-nanobot.md)\n- [Boba vs Town](https://www.anchorterminal.com/compare/boba-vs-town.md)\n- [Brea vs nanobot](https://www.anchorterminal.com/compare/brea-vs-nanobot.md)\n- [Brea vs Town](https://www.anchorterminal.com/compare/brea-vs-town.md)\n- [Del vs nanobot](https://www.anchorterminal.com/compare/del-vs-nanobot.md)\n- [Del vs Town](https://www.anchorterminal.com/compare/del-vs-town.md)\n- [HireAlpha vs nanobot](https://www.anchorterminal.com/compare/hirealpha-vs-nanobot.md)\n- [HireAlpha vs Town](https://www.anchorterminal.com/compare/hirealpha-vs-town.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- [OpenInstinct vs Town](https://www.anchorterminal.com/compare/openinstinct-vs-town.md)\n- [Orbits vs Town](https://www.anchorterminal.com/compare/orbits-vs-town.md)\n- [Orchid vs Town](https://www.anchorterminal.com/compare/orchid-ai-vs-town.md)\n- [szn vs Town](https://www.anchorterminal.com/compare/szn-vs-town.md)\n- [Tab vs Town](https://www.anchorterminal.com/compare/tab-bot-vs-town.md)\n- [Town vs Zapia](https://www.anchorterminal.com/compare/town-vs-zapia.md)\n- [AstrBot vs nanobot](https://www.anchorterminal.com/compare/astrbot-vs-nanobot.md)\n- [AstrBot vs Town](https://www.anchorterminal.com/compare/astrbot-vs-town.md)\n- [Boski vs nanobot](https://www.anchorterminal.com/compare/boski-vs-nanobot.md)\n- [Boski vs Town](https://www.anchorterminal.com/compare/boski-vs-town.md)\n- [Caddy vs nanobot](https://www.anchorterminal.com/compare/caddy-app-vs-nanobot.md)\n- [Caddy vs Town](https://www.anchorterminal.com/compare/caddy-app-vs-town.md)\n- [CowAgent vs nanobot](https://www.anchorterminal.com/compare/cowagent-vs-nanobot.md)\n- [CowAgent vs Town](https://www.anchorterminal.com/compare/cowagent-vs-town.md)\n- [folk vs nanobot](https://www.anchorterminal.com/compare/folk-nozomio-vs-nanobot.md)\n- [folk vs Town](https://www.anchorterminal.com/compare/folk-nozomio-vs-town.md)\n- [GAIA vs nanobot](https://www.anchorterminal.com/compare/gaia-vs-nanobot.md)\n- [GAIA vs Town](https://www.anchorterminal.com/compare/gaia-vs-town.md)\n- [Gemini Spark vs nanobot](https://www.anchorterminal.com/compare/gemini-spark-vs-nanobot.md)\n- [Gemini Spark vs Town](https://www.anchorterminal.com/compare/gemini-spark-vs-town.md)\n- [Grok Bot vs nanobot](https://www.anchorterminal.com/compare/grok-bot-vs-nanobot.md)\n- [Grok Bot vs Town](https://www.anchorterminal.com/compare/grok-bot-vs-town.md)\n- [Haven vs nanobot](https://www.anchorterminal.com/compare/haven-vs-nanobot.md)\n- [Haven vs Town](https://www.anchorterminal.com/compare/haven-vs-town.md)\n- [Hermes Agent vs nanobot](https://www.anchorterminal.com/compare/hermes-agent-vs-nanobot.md)\n- [Hermes Agent vs Town](https://www.anchorterminal.com/compare/hermes-agent-vs-town.md)\n- [Instinct vs nanobot](https://www.anchorterminal.com/compare/instinct-vs-nanobot.md)\n- [Instinct vs Town](https://www.anchorterminal.com/compare/instinct-vs-town.md)\n- [IronClaw vs nanobot](https://www.anchorterminal.com/compare/ironclaw-vs-nanobot.md)\n- [IronClaw vs Town](https://www.anchorterminal.com/compare/ironclaw-vs-town.md)\n- [Leon vs nanobot](https://www.anchorterminal.com/compare/leon-vs-nanobot.md)\n- [Leon vs Town](https://www.anchorterminal.com/compare/leon-vs-town.md)\n- [Lindy vs nanobot](https://www.anchorterminal.com/compare/lindy-vs-nanobot.md)\n- [Lindy vs Town](https://www.anchorterminal.com/compare/lindy-vs-town.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 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 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- [NanoClaw vs Town](https://www.anchorterminal.com/compare/nanoclaw-vs-town.md)\n- [Dots vs Town](https://www.anchorterminal.com/compare/openai-dots-vs-town.md)\n- [OpenClaw vs Town](https://www.anchorterminal.com/compare/openclaw-vs-town.md)\n- [PicoClaw vs Town](https://www.anchorterminal.com/compare/picoclaw-vs-town.md)\n- [Poke vs Town](https://www.anchorterminal.com/compare/poke-vs-town.md)\n- [QwenPaw vs Town](https://www.anchorterminal.com/compare/qwenpaw-vs-town.md)\n- [Town vs ZeroClaw](https://www.anchorterminal.com/compare/town-vs-zeroclaw.md)\n- [Town vs Zo Computer](https://www.anchorterminal.com/compare/town-vs-zo-computer.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- [Natura tinyNature vs Town](https://www.anchorterminal.com/compare/natura-vs-town.md)\n- [Pally vs Town](https://www.anchorterminal.com/compare/pally-vs-town.md)\n- [Tomo vs Town](https://www.anchorterminal.com/compare/tomo-vs-town.md)\n- [Town vs Wajo (Fo)](https://www.anchorterminal.com/compare/town-vs-wajo.md)\n- [nanobot vs Talorys](https://www.anchorterminal.com/compare/nanobot-vs-talorys.md)\n- [Talorys vs Town](https://www.anchorterminal.com/compare/talorys-vs-town.md)\n\n## Disclosure\n\n- Town competes with LocalGhost, which Anchor Terminal's founder builds. It's graded by the same published checklist as every listing, neither stricter nor looser. Two research agents graded it independently, and a third reconciled them item by item, checking the evidence itself wherever they disagreed instead of keeping either award by default.\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-14",
    "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"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "nanobot vs Town",
        "url": ""
      }
    ],
    "description": "nanobot scores 62.4 (B) to Town's 48.7 (D) for proactive personal assistants. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "nanobot B 62.4",
      "Town D 48.7",
      "scores"
    ],
    "h1": "nanobot vs Town",
    "image": "https://www.anchorterminal.com/assets/og/compare-nanobot-vs-town.png",
    "path": "/compare/nanobot-vs-town",
    "published": "2026-10-01",
    "section": "tools",
    "title": "nanobot vs Town for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-13",
    "url": "https://www.anchorterminal.com/compare/nanobot-vs-town"
  },
  "tokens": {
    "markdown": 3450,
    "slim": 630
  },
  "version": 1
}
