{
  "data": {
    "a": {
      "slug": "astrbot",
      "name": "AstrBot",
      "vendor": "AstrBotDevs",
      "vendorUrl": "https://astrbot.app",
      "kind": "harness",
      "category": "personal-assistants",
      "summary": "AstrBot is an open-source chatbot and agent program that the owner runs and connects to messaging platforms such as QQ, Telegram, Slack, Discord, Lark and WeCom, with scheduled tasks, MCP tools, plugins and a web admin panel.",
      "url": "https://www.anchorterminal.com/tools/astrbot",
      "markdownUrl": "https://www.anchorterminal.com/tools/astrbot.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/astrbot.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/astrbot.json",
      "repo": "https://github.com/AstrBotDevs/AstrBot",
      "license": "AGPL-3.0-or-later",
      "transports": [],
      "packages": [
        {
          "registry": "pypi",
          "name": "astrbot"
        },
        {
          "registry": "oci",
          "name": "soulter/astrbot"
        }
      ],
      "auth": "mixed",
      "authNotes": "No account with the project. The web panel signs in with the user `astrbot` and a random initial password printed in the startup log, with optional TOTP and a login rate limit (https://github.com/AstrBotDevs/AstrBot/blob/master/docs/en/use/webui.md). Outside programs use `abk_` API keys created in Settings, OpenAPI, sent as `Authorization: Bearer` or `X-API-Key`, limited by 11 scopes and two sensitive sub-scopes and stored as PBKDF2 hashes (https://github.com/AstrBotDevs/AstrBot/blob/master/docs/en/dev/openapi.md). Messaging platform tokens and model provider keys are entered in the panel and kept in `data/cmd_config.json`.",
      "pricing": "free",
      "pricingNotes": "Free under AGPL-3.0 with nothing to buy. The EULA says the team sells no service and that a request for payment is a likely scam (https://github.com/AstrBotDevs/AstrBot/blob/master/EULA.md). The owner pays the model provider and any search or sandbox service, or nothing with a local model. The README links a paid third-party cloud host and several model resellers through referral links (checked 2026-10-12).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, the OpenAPI file or the source (checked 2026-10-12).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 41800,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-12"
      },
      "docsUrl": "https://docs.astrbot.app",
      "openapi": "https://github.com/AstrBotDevs/AstrBot/blob/master/docs/public/openapi.json",
      "capabilities": [
        "assistant.proactive",
        "assistant.messaging",
        "assistant.self-hosted",
        "agent.mcp-client"
      ],
      "tags": [
        "open-source",
        "self-hosted",
        "free",
        "no-card",
        "python",
        "docker",
        "openapi",
        "agpl",
        "telemetry-default-on"
      ],
      "lastRelease": "2026-09-27",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 58.8,
        "grade": "C",
        "agentReady": false,
        "rank": 584,
        "ranked": true,
        "rankOf": 986,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 54,
          "maintenance": 81,
          "payments": 60,
          "reliability": 81,
          "schema": 62,
          "security": 44,
          "transparency": 40
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-12"
        },
        "negative": -2,
        "negativeNotes": [
          "2025-11-14. GHSA-4m32-cjv7-f425 (CVE-2025-55449, critical, 9.8), a hard-coded JWT signing key that let an unauthenticated attacker install a plugin and run commands on any reachable instance at 3.5.17 or earlier. Patched in 3.5.18 on 21 June 2025 and published five months later, inside the last 12 months. Fixed and documented, so the deduction decays to -2. https://github.com/AstrBotDevs/AstrBot/security/advisories/GHSA-4m32-cjv7-f425"
        ],
        "verdict": "Fourteen official messaging adapters, scheduled tasks and scoped API keys come in one AGPL-3.0 program with releases most weeks. No tool call asks for approval, no mail, calendar or long-term memory connector is built in, and usage statistics, including the machine's hostname, are sent by default.",
        "bestFor": "Someone who wants one self-run bot answering on QQ, Telegram, Slack, Discord, Lark or WeCom, in private or group chats, with scheduled tasks, a knowledge base and plugins.",
        "strengths": [
          "Official adapters for 14 messaging platforms in the README table, among them QQ, Telegram, Slack, Discord, LINE, Lark, DingTalk and WeCom",
          "Agent shell, Python and file tools are off by default (`computer_use_runtime` is `none`) and limited to administrators when turned on",
          "HTTP API under `/api/v1` with a published OpenAPI file of 170 paths and API keys limited by 11 scopes, stored as PBKDF2 hashes",
          "About 15 tagged releases in the 90 days to 12 October 2026, each with a dated changelog file in English and Chinese",
          "Unit tests run on Linux, macOS and Windows, and the last master runs we saw on 12 October 2026 passed"
        ],
        "weaknesses": [
          "No approval step before any tool call. The agent sends messages, creates scheduled tasks and calls MCP tools without asking",
          "No built-in mail, calendar or file-account connector and no long-term memory of the owner. Both depend on third-party plugins or MCP servers",
          "Usage statistics are on by default and include the hostname and an installation ID, while the EULA says nothing personally identifiable is collected",
          "The web panel listens on 0.0.0.0 by default, and the repository has no SECURITY.md or security.txt",
          "No prompt-injection guidance found, although group messages, web pages and MCP results all reach the model"
        ],
        "agentNotes": [
          "Set `ASTRBOT_DISABLE_METRICS=1` before the first start. Statistics, including the hostname, are sent to tickstats.soulter.top by default",
          "Set `dashboard.host` to 127.0.0.1 in `data/cmd_config.json`, or the `DASHBOARD_HOST` variable, unless remote access is intended. The default is 0.0.0.0",
          "Create an `abk_` key in Settings, OpenAPI with only the scopes needed, and send it as `Authorization: Bearer` or `X-API-Key`",
          "Include `username` in every `POST /api/v1/chat` body. Without the `chat:admin` scope an administrator ID is rejected",
          "Check Extensions, Future Tasks after asking for a schedule. One-off tasks are deleted after their run even when the run fails"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 58.8
          }
        ],
        "editorialScores": {
          "ergonomics": 54,
          "maintenance": 81,
          "payments": 60,
          "reliability": 81,
          "schema": 62,
          "security": 44,
          "transparency": 56
        },
        "provenanceScore": 23
      },
      "connect": {
        "install": "uv tool install astrbot --python 3.12 \u0026\u0026 astrbot init \u0026\u0026 astrbot run",
        "http": "curl -N 'http://localhost:6185/api/v1/chat' -H 'Authorization: Bearer abk_xxx' -H 'Content-Type: application/json' -d '{\"message\":\"Hello\",\"username\":\"alice\"}'"
      },
      "letme": {
        "capability": "https://letme.dev/assistant.proactive",
        "tool": "https://letme.dev/astrbot"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "",
        "domain": "astrbot.app",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "https://github.com/AstrBotDevs/AstrBot/blob/master/EULA.md",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/AstrBotDevs/AstrBot/releases",
        "securityTxt": "none",
        "checked": "2026-10-12",
        "notes": [
          "No legal entity was found. The docs call AstrBot a non-profit project under the AstrBotDevs organisation, and the EULA speaks for the AstrBot Team.",
          "The EULA in the repository (last updated 12 January 2026) is the only terms document found. Its section 8 is the only privacy statement, so no privacy link is given.",
          "astrbot.app answers every path, robots.txt and `/.well-known/security.txt` included, with the same script-drawn page, so the site has no robots rules and no security.txt. docs.astrbot.app answers 404 for security.txt and llms.txt.",
          "GitHub says the project has not set up a SECURITY.md. A Report a vulnerability button is shown and two advisories are published.",
          "Usage statistics go to tickstats.soulter.top, a host outside the project's domain.",
          "The domain's registration date was not looked up."
        ],
        "score": 23
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/astrbot.json"
    },
    "answer": "AstrBot scores 58.8 (C) on agent readiness against Lindy's 32.3 (F), and leads in 5 of 7 scored categories. Lindy leads on security \u0026 auth and transparency \u0026 trust.",
    "b": {
      "slug": "lindy",
      "name": "Lindy",
      "vendor": "Crivello Corp (doing business as Lindy)",
      "vendorUrl": "https://www.lindy.ai",
      "kind": "platform",
      "category": "personal-assistants",
      "summary": "Lindy is a hosted AI assistant from Crivello Corp. Each user has a private assistant for mail, calendar and meetings, reached by Slack, iMessage, SMS, email or the web app, and a team shares a second one in Slack channels.",
      "url": "https://www.anchorterminal.com/tools/lindy",
      "markdownUrl": "https://www.anchorterminal.com/tools/lindy.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/lindy.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/lindy.json",
      "license": "Proprietary service under Lindy's Terms of Service. No source is published",
      "transports": [],
      "packages": [],
      "auth": "oauth",
      "authNotes": "A person signs in with Google or Microsoft and connects mail and calendar from either, a phone number verified by code, and Slack through an app an owner or admin installs. Other tools connect by OAuth or an API key, and every action for a tool turns on at once with no scope choice in Lindy. A connection is personal until an owner or admin shares it with the workspace, after which everyone's Lindy works as that account. Saved API keys are write-only and can be rotated or revoked. No public API or key for outside callers was found in the docs.",
      "pricing": "paid",
      "pricingNotes": "$29.99 per active user a month with 3,000 credits, pooled across the workspace, and larger monthly credit amounts up to 1,750,000 for $9,999.50. Top-ups are $10 per 1,000 credits and do not expire, while monthly credits do not roll over. New accounts get $50 of credit for seven days with no card. The pricing page gives 2 to 250 credits for an everyday request and 1,000 to 2,500 for a large build. The docs name Plus, Pro and Max plans priced only inside the app, which the pricing page does not list (checked 2026-10-12).",
      "priceSummary": "$29.99 / seat-mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 on the pricing page, the terms or the docs (checked 2026-10-12).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-12"
      },
      "docsUrl": "https://docs.lindy.ai",
      "llmsTxt": "https://docs.lindy.ai/llms.txt",
      "capabilities": [
        "assistant.proactive",
        "assistant.messaging",
        "assistant.accounts",
        "assistant.memory",
        "agent.mcp-client"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "paid",
        "free-trial",
        "no-card",
        "slack",
        "imessage",
        "sms",
        "email",
        "chrome-extension",
        "mcp-client",
        "approvals",
        "llms-txt",
        "soc2",
        "team"
      ],
      "lastRelease": "2025-10-21",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 32.3,
        "grade": "F",
        "agentReady": false,
        "rank": 968,
        "ranked": true,
        "rankOf": 986,
        "categoryRank": 16,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 43,
          "maintenance": 9,
          "payments": 35,
          "reliability": 24,
          "schema": 32,
          "security": 49,
          "transparency": 52
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-12"
        },
        "negative": -3,
        "negativeNotes": [
          "2026-10-12. The pricing page and the docs pricing page answer the question of whether Lindy does anything without approval with No, and say anything with outside impact waits for approval. The integrations page says approval settings apply in shared Slack threads only, that web chat, Slack direct messages, iMessage and SMS are not guarded, and that an integration can be set to always allow writes (https://www.lindy.ai/pricing, https://docs.lindy.ai/pricing.md, https://docs.lindy.ai/integrations/overview.md). 3 points for a misleading claim."
        ],
        "verdict": "Lindy keeps what it remembers in files the owner can read and edit, and publishes credit prices. Its approval setting applies in shared Slack threads only, so writes asked for by direct message, text or web chat run unasked, which its pricing page does not say. It has no status page, and its changelog stops in October 2025.",
        "bestFor": "Lindy suits a person or small team that lives in Slack and Google or Microsoft mail and wants briefs, drafts, scheduling and meeting notes done on a schedule.",
        "strengths": [
          "Memory is a set of plain files in the web app, split into Personal, Team and System scopes, which the owner can read, edit and restore by version.",
          "Each integration has a setting that makes Lindy ask in Slack before writing, or stops it writing with that tool at all.",
          "Saved API keys are write-only. The docs say a value cannot be read back in the app, through the API or by asking Lindy, and keys can be rotated or revoked.",
          "The privacy policy of 28 September 2026 names its processors by category, among them Anthropic, OpenAI, Perplexity AI, Pipedream, WorkOS, Twilio and Recall.ai.",
          "Credit prices are public. A seat is $29.99 a month with 3,000 credits, top-ups are $10 per 1,000, and new accounts get $50 of credit with no card."
        ],
        "weaknesses": [
          "The integrations page says approval settings apply in shared Slack threads only. Web chat, Slack direct messages, iMessage and SMS are not covered, and reads are never covered.",
          "The pricing page and the docs pricing page both answer that Lindy does nothing with outside impact without approval, which the integrations page contradicts.",
          "No status page, uptime record or SLA was found on the site or in the docs.",
          "The public changelog's newest entry is dated 21 October 2025, and it describes an agent builder the current docs no longer cover.",
          "Deleting a memory file keeps its earlier versions, and no way to purge them or a retention period was found. The privacy policy gives no period either.",
          "The terms of 24 September 2026 forbid automated use of the system and use for any commercial enterprise, in a product sold to companies. This matters before any probe is run."
        ],
        "agentNotes": [
          "Treat a request sent by direct message, text or web chat as unguarded. Approval prompts appear in shared Slack threads only.",
          "Run a routine as a dry run before turning it on. A dry run reads real data and sends, posts and writes nothing.",
          "Turn off unused tools after adding an MCP server. Every supported tool arrives switched on, and a large server adds more than a hundred.",
          "Expect a billed seat for anyone who mentions Lindy in Slack. A teammate who joins that way has seven free days first.",
          "Connect only hosted MCP servers on public HTTPS with streamable HTTP, the one kind the docs describe."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "F",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 32.3
          }
        ],
        "editorialScores": {
          "ergonomics": 43,
          "maintenance": 9,
          "payments": 35,
          "reliability": 24,
          "schema": 32,
          "security": 49,
          "transparency": 36
        },
        "provenanceScore": 68
      },
      "letme": {
        "capability": "https://letme.dev/assistant.proactive",
        "tool": "https://letme.dev/lindy"
      },
      "area": "frameworks",
      "unitPrices": [
        {
          "item": "Team seat",
          "unit": "seat-month",
          "usd": 29.99,
          "note": "3,000 credits a month, pooled across the workspace. Every active user is billed"
        },
        {
          "item": "Top-up credit",
          "unit": "credit",
          "usd": 0.01,
          "note": "$10 per 1,000 credits. Top-up credits do not expire, monthly credits do not roll over"
        }
      ],
      "provenance": {
        "legalEntity": "Crivello Corp (doing business as Lindy)",
        "domain": "lindy.ai",
        "domainRegistered": "2019-05-16",
        "endpointOnVendorDomain": true,
        "terms": "https://www.lindy.ai/terms-of-service",
        "privacy": "https://www.lindy.ai/privacy",
        "statusPage": "",
        "changelog": "https://www.lindy.ai/changelog",
        "securityTxt": "none",
        "checked": "2026-10-12",
        "notes": [
          "The Terms of Service, last updated 24 September 2026, name Crivello Corp, doing business as Lindy, registered in Oregon at 9450 SW Gemini Dr, Beaverton, OR 97008, and are governed by California law with binding arbitration.",
          "The terms cover the site and all related products and services. No separate service agreement or DPA was linked from the pages read.",
          "The privacy policy was last updated 28 September 2026.",
          "The web app and sign-in are at chat.lindy.ai.",
          "www.lindy.ai/.well-known/security.txt returns 404. No disclosure policy or bug bounty was found.",
          "No status page is linked from the site, the docs or the security page.",
          "RDAP gives a registration date of 2019-05-16 for lindy.ai, with NameCheap as registrar."
        ],
        "score": 68
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/lindy.json"
    },
    "facts": [
      {
        "a": "Agent harness",
        "b": "Platform",
        "name": "Kind"
      },
      {
        "a": "AstrBotDevs",
        "b": "Crivello Corp (doing business as Lindy)",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "AGPL-3.0-or-later",
        "b": "Proprietary service under Lindy's Terms of Service. No source is published",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-27",
        "b": "2025-10-21",
        "name": "Last release"
      },
      {
        "a": "2026-01-12",
        "b": "2026-09-24",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "2026-09-28",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "42k stars",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "AstrBot scores 58.8 (C) on agent readiness against Lindy's 32.3 (F), and leads in 5 of 7 scored categories. Lindy leads on security \u0026 auth and transparency \u0026 trust.",
        "question": "Which is better for AI agents, AstrBot or Lindy?"
      },
      {
        "answer": "AstrBot is open source (AGPL-3.0-or-later). No open-source release is listed for Lindy.",
        "question": "Are AstrBot and Lindy open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 81 against 24",
          "Schema \u0026 documentation, 62 against 32",
          "Agent ergonomics, 54 against 43",
          "Payments \u0026 pricing, 60 against 35",
          "Maintenance \u0026 community, 81 against 9"
        ],
        "also": [
          "Open source"
        ],
        "goodFor": "Someone who wants one self-run bot answering on QQ, Telegram, Slack, Discord, Lark or WeCom, in private or group chats, with scheduled tasks, a knowledge base and plugins.",
        "slug": "astrbot",
        "watchFor": "No approval step before any tool call. The agent sends messages, creates scheduled tasks and calls MCP tools without asking"
      },
      {
        "aheadOn": [
          "Security \u0026 auth, 49 against 44",
          "Transparency \u0026 trust, 52 against 40"
        ],
        "also": null,
        "goodFor": "Lindy suits a person or small team that lives in Slack and Google or Microsoft mail and wants briefs, drafts, scheduling and meeting notes done on a schedule.",
        "slug": "lindy",
        "watchFor": "The integrations page says approval settings apply in shared Slack threads only. Web chat, Slack direct messages, iMessage and SMS are not covered, and reads are never covered."
      }
    ],
    "job": {
      "capability": "assistant.proactive",
      "name": "Assistant proactive"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-cowagent.json",
        "title": "AstrBot vs CowAgent",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-cowagent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-gaia.json",
        "title": "AstrBot vs GAIA",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-gaia"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-gemini-spark.json",
        "title": "AstrBot vs Gemini Spark",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-gemini-spark"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-grok-bot.json",
        "title": "AstrBot vs Grok Bot",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-grok-bot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-haven.json",
        "title": "AstrBot vs Haven",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-haven"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-hermes-agent.json",
        "title": "AstrBot vs Hermes Agent",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-hermes-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-instinct.json",
        "title": "AstrBot vs Instinct",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-instinct"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-ironclaw.json",
        "title": "AstrBot vs IronClaw",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-ironclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-leon.json",
        "title": "AstrBot vs Leon",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-leon"
      },
      {
        "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-nanoclaw.json",
        "title": "AstrBot vs NanoClaw",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-nanoclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-openai-dots.json",
        "title": "AstrBot vs Dots",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-openai-dots"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-openclaw.json",
        "title": "AstrBot vs OpenClaw",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-openclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-picoclaw.json",
        "title": "AstrBot vs PicoClaw",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-picoclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-poke.json",
        "title": "AstrBot vs Poke",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-poke"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-qwenpaw.json",
        "title": "AstrBot vs QwenPaw",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-qwenpaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-zeroclaw.json",
        "title": "AstrBot vs ZeroClaw",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-zeroclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-zo-computer.json",
        "title": "AstrBot vs Zo Computer",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-zo-computer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cowagent-vs-lindy.json",
        "title": "CowAgent vs Lindy",
        "url": "https://www.anchorterminal.com/compare/cowagent-vs-lindy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gaia-vs-lindy.json",
        "title": "GAIA vs Lindy",
        "url": "https://www.anchorterminal.com/compare/gaia-vs-lindy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-spark-vs-lindy.json",
        "title": "Gemini Spark vs Lindy",
        "url": "https://www.anchorterminal.com/compare/gemini-spark-vs-lindy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grok-bot-vs-lindy.json",
        "title": "Grok Bot vs Lindy",
        "url": "https://www.anchorterminal.com/compare/grok-bot-vs-lindy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/haven-vs-lindy.json",
        "title": "Haven vs Lindy",
        "url": "https://www.anchorterminal.com/compare/haven-vs-lindy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hermes-agent-vs-lindy.json",
        "title": "Hermes Agent vs Lindy",
        "url": "https://www.anchorterminal.com/compare/hermes-agent-vs-lindy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/instinct-vs-lindy.json",
        "title": "Instinct vs Lindy",
        "url": "https://www.anchorterminal.com/compare/instinct-vs-lindy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ironclaw-vs-lindy.json",
        "title": "IronClaw vs Lindy",
        "url": "https://www.anchorterminal.com/compare/ironclaw-vs-lindy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/leon-vs-lindy.json",
        "title": "Leon vs Lindy",
        "url": "https://www.anchorterminal.com/compare/leon-vs-lindy"
      },
      {
        "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-nanoclaw.json",
        "title": "Lindy vs NanoClaw",
        "url": "https://www.anchorterminal.com/compare/lindy-vs-nanoclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lindy-vs-openai-dots.json",
        "title": "Lindy vs Dots",
        "url": "https://www.anchorterminal.com/compare/lindy-vs-openai-dots"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lindy-vs-openclaw.json",
        "title": "Lindy vs OpenClaw",
        "url": "https://www.anchorterminal.com/compare/lindy-vs-openclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lindy-vs-picoclaw.json",
        "title": "Lindy vs PicoClaw",
        "url": "https://www.anchorterminal.com/compare/lindy-vs-picoclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lindy-vs-poke.json",
        "title": "Lindy vs Poke",
        "url": "https://www.anchorterminal.com/compare/lindy-vs-poke"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lindy-vs-qwenpaw.json",
        "title": "Lindy vs QwenPaw",
        "url": "https://www.anchorterminal.com/compare/lindy-vs-qwenpaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lindy-vs-zeroclaw.json",
        "title": "Lindy vs ZeroClaw",
        "url": "https://www.anchorterminal.com/compare/lindy-vs-zeroclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lindy-vs-zo-computer.json",
        "title": "Lindy vs Zo Computer",
        "url": "https://www.anchorterminal.com/compare/lindy-vs-zo-computer"
      }
    ],
    "scores": [
      {
        "astrbot": 81,
        "by": 57,
        "edge": "astrbot",
        "key": "reliability",
        "lindy": 24,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "astrbot": 62,
        "by": 30,
        "edge": "astrbot",
        "key": "schema",
        "lindy": 32,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "astrbot": 54,
        "by": 11,
        "edge": "astrbot",
        "key": "ergonomics",
        "lindy": 43,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "astrbot": 44,
        "by": 5,
        "edge": "lindy",
        "key": "security",
        "lindy": 49,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "astrbot": 60,
        "by": 25,
        "edge": "astrbot",
        "key": "payments",
        "lindy": 35,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "astrbot": 81,
        "by": 72,
        "edge": "astrbot",
        "key": "maintenance",
        "lindy": 9,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "astrbot": 40,
        "by": 12,
        "edge": "lindy",
        "key": "transparency",
        "lindy": 52,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "AstrBot scores 58.8 (C) on agent readiness against Lindy's 32.3 (F), and leads in 5 of 7 scored categories. Lindy leads on security \u0026 auth and transparency \u0026 trust. Both do assistant proactive.",
    "verdicts": {
      "astrbot": "Fourteen official messaging adapters, scheduled tasks and scoped API keys come in one AGPL-3.0 program with releases most weeks. No tool call asks for approval, no mail, calendar or long-term memory connector is built in, and usage statistics, including the machine's hostname, are sent by default.",
      "lindy": "Lindy keeps what it remembers in files the owner can read and edit, and publishes credit prices. Its approval setting applies in shared Slack threads only, so writes asked for by direct message, text or web chat run unasked, which its pricing page does not say. It has no status page, and its changelog stops in October 2025."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/astrbot-vs-lindy",
    "json": "https://www.anchorterminal.com/compare/astrbot-vs-lindy.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/astrbot-vs-lindy.md",
    "slim": "https://www.anchorterminal.com/compare/astrbot-vs-lindy.min.md"
  },
  "markdown": "AstrBot scores 58.8 (C) on agent readiness against Lindy's 32.3 (F), and leads in 5 of 7 scored categories. Lindy leads on security \u0026 auth and transparency \u0026 trust. Both do assistant proactive.\n\n- AstrBot: grade C, 58.8/100, rank #584 of 986. Markdown https://www.anchorterminal.com/tools/astrbot.md · JSON https://www.anchorterminal.com/api/v1/tools/astrbot.json\n- Lindy: grade F, 32.3/100, rank #968 of 986. Markdown https://www.anchorterminal.com/tools/lindy.md · JSON https://www.anchorterminal.com/api/v1/tools/lindy.json\n- Best AI personal assistants that act for one person: https://www.anchorterminal.com/best/personal-assistants/index.md\n- All 190 assistants comparisons: https://www.anchorterminal.com/compare/personal-assistants/index.md\n\n## Which one, for what\n\n### AstrBot (C)\n\nGood for: Someone who wants one self-run bot answering on QQ, Telegram, Slack, Discord, Lark or WeCom, in private or group chats, with scheduled tasks, a knowledge base and plugins.\n\nAhead on:\n- Reliability, 81 against 24\n- Schema \u0026 documentation, 62 against 32\n- Agent ergonomics, 54 against 43\n- Payments \u0026 pricing, 60 against 35\n- Maintenance \u0026 community, 81 against 9\n\nAlso in its favour:\n- Open source\n\nWatch for: No approval step before any tool call. The agent sends messages, creates scheduled tasks and calls MCP tools without asking\n\n### Lindy (F)\n\nGood for: Lindy suits a person or small team that lives in Slack and Google or Microsoft mail and wants briefs, drafts, scheduling and meeting notes done on a schedule.\n\nAhead on:\n- Security \u0026 auth, 49 against 44\n- Transparency \u0026 trust, 52 against 40\n\nWatch for: The integrations page says approval settings apply in shared Slack threads only. Web chat, Slack direct messages, iMessage and SMS are not covered, and reads are never covered.\n\n\n## Score by category\n\n| Category | Weight | AstrBot | Lindy | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 81 | 24 | AstrBot +57 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 62 | 32 | AstrBot +30 |\n| Agent ergonomics | 13% (16.2 this run) | 54 | 43 | AstrBot +11 |\n| Security \u0026 auth | 14% (17.5 this run) | 44 | 49 | Lindy +5 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 35 | AstrBot +25 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 81 | 9 | AstrBot +72 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 40 | 52 | Lindy +12 |\n| Negative events | ≤15 | -2 | -3 | |\n| **Total** | | **58.8 · C** | **32.3 · F** | |\n\n## Facts side by side\n\n| Fact | AstrBot | Lindy |\n| --- | --- | --- |\n| Kind | Agent harness | Platform |\n| Vendor | AstrBotDevs | Crivello Corp (doing business as Lindy) |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | OAuth or key | OAuth |\n| Pricing | Free | Paid |\n| x402 | no | no |\n| Licence | AGPL-3.0-or-later | Proprietary service under Lindy's Terms of Service. No source is published |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| Last release | 2026-09-27 | 2025-10-21 |\n| Terms last updated | 2026-01-12 | 2026-09-24 |\n| Privacy policy last updated | no document linked | 2026-09-28 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | 42k stars | none |\n\n## Verdicts\n\n**AstrBot.** Fourteen official messaging adapters, scheduled tasks and scoped API keys come in one AGPL-3.0 program with releases most weeks. No tool call asks for approval, no mail, calendar or long-term memory connector is built in, and usage statistics, including the machine's hostname, are sent by default.\n\n**Lindy.** Lindy keeps what it remembers in files the owner can read and edit, and publishes credit prices. Its approval setting applies in shared Slack threads only, so writes asked for by direct message, text or web chat run unasked, which its pricing page does not say. It has no status page, and its changelog stops in October 2025.\n\n## Before you call either\n\n### AstrBot\n\n1. Set `ASTRBOT_DISABLE_METRICS=1` before the first start. Statistics, including the hostname, are sent to tickstats.soulter.top by default\n2. Set `dashboard.host` to 127.0.0.1 in `data/cmd_config.json`, or the `DASHBOARD_HOST` variable, unless remote access is intended. The default is 0.0.0.0\n3. Create an `abk_` key in Settings, OpenAPI with only the scopes needed, and send it as `Authorization: Bearer` or `X-API-Key`\n4. Include `username` in every `POST /api/v1/chat` body. Without the `chat:admin` scope an administrator ID is rejected\n5. Check Extensions, Future Tasks after asking for a schedule. One-off tasks are deleted after their run even when the run fails\n\n### Lindy\n\n1. Treat a request sent by direct message, text or web chat as unguarded. Approval prompts appear in shared Slack threads only.\n2. Run a routine as a dry run before turning it on. A dry run reads real data and sends, posts and writes nothing.\n3. Turn off unused tools after adding an MCP server. Every supported tool arrives switched on, and a large server adds more than a hundred.\n4. Expect a billed seat for anyone who mentions Lindy in Slack. A teammate who joins that way has seven free days first.\n5. Connect only hosted MCP servers on public HTTPS with streamable HTTP, the one kind the docs describe.\n\n## Questions\n\n### Which is better for AI agents, AstrBot or Lindy?\n\nAstrBot scores 58.8 (C) on agent readiness against Lindy's 32.3 (F), and leads in 5 of 7 scored categories. Lindy leads on security \u0026 auth and transparency \u0026 trust.\n\n### Are AstrBot and Lindy open source?\n\nAstrBot is open source (AGPL-3.0-or-later). No open-source release is listed for Lindy.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/astrbot-vs-lindy.json, and with the fewest tokens: https://www.anchorterminal.com/compare/astrbot-vs-lindy.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"astrbot\", \"b\": \"lindy\"}`. From a terminal: `anchor compare astrbot lindy`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/astrbot.json and https://www.anchorterminal.com/api/v1/tools/lindy.json\n\n## Other comparisons with AstrBot or Lindy\n\n- [AstrBot vs CowAgent](https://www.anchorterminal.com/compare/astrbot-vs-cowagent.md)\n- [AstrBot vs GAIA](https://www.anchorterminal.com/compare/astrbot-vs-gaia.md)\n- [AstrBot vs Gemini Spark](https://www.anchorterminal.com/compare/astrbot-vs-gemini-spark.md)\n- [AstrBot vs Grok Bot](https://www.anchorterminal.com/compare/astrbot-vs-grok-bot.md)\n- [AstrBot vs Haven](https://www.anchorterminal.com/compare/astrbot-vs-haven.md)\n- [AstrBot vs Hermes Agent](https://www.anchorterminal.com/compare/astrbot-vs-hermes-agent.md)\n- [AstrBot vs Instinct](https://www.anchorterminal.com/compare/astrbot-vs-instinct.md)\n- [AstrBot vs IronClaw](https://www.anchorterminal.com/compare/astrbot-vs-ironclaw.md)\n- [AstrBot vs Leon](https://www.anchorterminal.com/compare/astrbot-vs-leon.md)\n- [AstrBot vs nanobot](https://www.anchorterminal.com/compare/astrbot-vs-nanobot.md)\n- [AstrBot vs NanoClaw](https://www.anchorterminal.com/compare/astrbot-vs-nanoclaw.md)\n- [AstrBot vs Dots](https://www.anchorterminal.com/compare/astrbot-vs-openai-dots.md)\n- [AstrBot vs OpenClaw](https://www.anchorterminal.com/compare/astrbot-vs-openclaw.md)\n- [AstrBot vs PicoClaw](https://www.anchorterminal.com/compare/astrbot-vs-picoclaw.md)\n- [AstrBot vs Poke](https://www.anchorterminal.com/compare/astrbot-vs-poke.md)\n- [AstrBot vs QwenPaw](https://www.anchorterminal.com/compare/astrbot-vs-qwenpaw.md)\n- [AstrBot vs ZeroClaw](https://www.anchorterminal.com/compare/astrbot-vs-zeroclaw.md)\n- [AstrBot vs Zo Computer](https://www.anchorterminal.com/compare/astrbot-vs-zo-computer.md)\n- [CowAgent vs Lindy](https://www.anchorterminal.com/compare/cowagent-vs-lindy.md)\n- [GAIA vs Lindy](https://www.anchorterminal.com/compare/gaia-vs-lindy.md)\n- [Gemini Spark vs Lindy](https://www.anchorterminal.com/compare/gemini-spark-vs-lindy.md)\n- [Grok Bot vs Lindy](https://www.anchorterminal.com/compare/grok-bot-vs-lindy.md)\n- [Haven vs Lindy](https://www.anchorterminal.com/compare/haven-vs-lindy.md)\n- [Hermes Agent vs Lindy](https://www.anchorterminal.com/compare/hermes-agent-vs-lindy.md)\n- [Instinct vs Lindy](https://www.anchorterminal.com/compare/instinct-vs-lindy.md)\n- [IronClaw vs Lindy](https://www.anchorterminal.com/compare/ironclaw-vs-lindy.md)\n- [Leon vs Lindy](https://www.anchorterminal.com/compare/leon-vs-lindy.md)\n- [Lindy vs nanobot](https://www.anchorterminal.com/compare/lindy-vs-nanobot.md)\n- [Lindy vs NanoClaw](https://www.anchorterminal.com/compare/lindy-vs-nanoclaw.md)\n- [Lindy vs Dots](https://www.anchorterminal.com/compare/lindy-vs-openai-dots.md)\n- [Lindy vs OpenClaw](https://www.anchorterminal.com/compare/lindy-vs-openclaw.md)\n- [Lindy vs PicoClaw](https://www.anchorterminal.com/compare/lindy-vs-picoclaw.md)\n- [Lindy vs Poke](https://www.anchorterminal.com/compare/lindy-vs-poke.md)\n- [Lindy vs QwenPaw](https://www.anchorterminal.com/compare/lindy-vs-qwenpaw.md)\n- [Lindy vs ZeroClaw](https://www.anchorterminal.com/compare/lindy-vs-zeroclaw.md)\n- [Lindy vs Zo Computer](https://www.anchorterminal.com/compare/lindy-vs-zo-computer.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-12",
    "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": "AstrBot vs Lindy",
        "url": ""
      }
    ],
    "description": "AstrBot scores 58.8 (C) to Lindy's 32.3 (F) for assistant proactive. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "AstrBot C 58.8",
      "Lindy F 32.3",
      "scores"
    ],
    "h1": "AstrBot vs Lindy",
    "image": "https://www.anchorterminal.com/assets/og/compare-astrbot-vs-lindy.png",
    "path": "/compare/astrbot-vs-lindy",
    "published": "2026-10-01",
    "section": "tools",
    "title": "AstrBot vs Lindy for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-12",
    "url": "https://www.anchorterminal.com/compare/astrbot-vs-lindy"
  },
  "tokens": {
    "markdown": 2550,
    "slim": 680
  },
  "version": 1
}
