{
  "data": {
    "a": {
      "slug": "deeptutor",
      "name": "DeepTutor",
      "vendor": "HKUDS",
      "vendorUrl": "https://deeptutor.info",
      "kind": "harness",
      "category": "personal-assistants",
      "summary": "DeepTutor is an open-source, self-hosted learning workspace from HKUDS for tutoring, quizzes, research reports and knowledge bases, with persistent memory and optional multiple users. It runs as a web app, and a `deeptutor` CLI emits NDJSON for other agents.",
      "url": "https://www.anchorterminal.com/tools/deeptutor",
      "markdownUrl": "https://www.anchorterminal.com/tools/deeptutor.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/deeptutor.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/deeptutor.json",
      "repo": "https://github.com/HKUDS/DeepTutor",
      "license": "Apache-2.0",
      "transports": [],
      "packages": [
        {
          "registry": "pypi",
          "name": "deeptutor"
        },
        {
          "registry": "pypi",
          "name": "deeptutor-cli"
        }
      ],
      "auth": "none",
      "authNotes": "No account with the project. The owner adds model provider keys in Settings or through `deeptutor config apply` with `api_key_env` naming an environment variable, or signs in to OpenAI Codex (OAuth), GitHub Copilot (device login) or CodeBuddy. Web sign-in is off by default; with `auth.json` enabled the first registered user becomes admin and grants models, knowledge bases, skills, tools and MCP access to other users (https://github.com/HKUDS/DeepTutor/blob/main/README.md).",
      "pricing": "free",
      "pricingNotes": "Free under the Apache 2.0 licence, and the README says the project has no paid online products. The owner pays the chosen model, embedding and search providers, or nothing with a local model through Ollama, LM Studio, llama.cpp, vLLM or Lemonade. The README carries a PageIndex discount code and an API Route provider preset, both third parties (checked 2026-10-30).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the README, SKILL.md or the developer handbook (checked 2026-10-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 51497,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-30"
      },
      "docsUrl": "https://deeptutor.info/",
      "capabilities": [
        "assistant.memory",
        "assistant.self-hosted",
        "assistant.messaging",
        "agent.mcp-client",
        "knowledge.search",
        "search.research",
        "memory.user",
        "document.write"
      ],
      "tags": [
        "open-source",
        "self-hosted",
        "local",
        "free",
        "python",
        "apache-2.0",
        "cli",
        "harness",
        "docker",
        "mcp-client",
        "rag",
        "no-card"
      ],
      "lastRelease": "2026-10-28",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 62.7,
        "grade": "B",
        "agentReady": false,
        "rank": 494,
        "ranked": true,
        "rankOf": 1239,
        "categoryRank": 7,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 63,
          "maintenance": 84,
          "payments": 60,
          "reliability": 78,
          "schema": 71,
          "security": 51,
          "transparency": 52
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-30"
        },
        "negative": -3,
        "negativeNotes": [
          "2026-09-30. CVE-2026-51870 (critical on NVD). Command execution through the TutorBot shell tool's `ExecTool.execute` in v1.4.0, reported in issue #506. v1.4.1 of 27 May 2026 lists it closed with a shell RCE (#518), a filesystem path traversal (#517) and three authorisation bypasses (#514 to #516), and makes shell exec opt-in. Fixed within five days and documented in release notes, -2. https://nvd.nist.gov/vuln/detail/CVE-2026-51870",
          "2026-06-30. GHSA-jg88-rvpc-qvxj (CVE-2026-58168, high). Before 1.4.10, a user grant without `mcp_tools` let non-admin users in multi-user mode invoke every configured MCP tool. Single-user installs were unaffected. Fixed in 1.4.10 of 21 June 2026 with deny-by-default MCP access, -1. https://api.osv.dev/v1/vulns/GHSA-jg88-rvpc-qvxj"
        ],
        "verdict": "DeepTutor runs on the owner's machine under Apache 2.0, ships releases every few days with upgrade notes, and gives other agents a JSON CLI with resumable sessions. Its default launch binds all interfaces with sign-in off and permissive CORS, there is no security policy, and two CVEs in 2026 covered a shell-tool RCE and a multi-user MCP bypass, both fixed.",
        "bestFor": "A learner, a teacher or a small group that wants a self-hosted tutor over their own documents, with quizzes, research reports, memory and IM companions, or for an agent that hands study tasks to it through the JSON CLI.",
        "strengths": [
          "Apache 2.0, self-hosted, and the README says the project sells nothing",
          "`deeptutor run ... --format json` streams NDJSON tagged with `session_id`, and `--session` chains turns headlessly",
          "SKILL.md and AGENT_SETUP.md give an agent a non-interactive setup path with `config apply --check` and `doctor --format json`",
          "Releases every few days with dated notes and upgrade steps, 27 in the 90 days to 30 October 2026",
          "Inspectable file-backed memory with an append-only L1 trace, and grants, audit records and per-user isolation in multi-user mode"
        ],
        "weaknesses": [
          "The default launch binds the backend to 0.0.0.0 with sign-in off and CORS open to any origin with credentials",
          "No SECURITY.md, no private reporting route and no repository-published advisories, while two CVEs were assigned in 2026",
          "The `exec` sandbox falls back to a best-effort restricted subprocess by default when no runner or bubblewrap is present",
          "Nightly test runs on main failed every night from 20 to 28 October 2026 before passing again on 29 and 30 October",
          "Provider keys are stored in plain JSON under `data/user/settings/`"
        ],
        "agentNotes": [
          "Run `deeptutor run \u003ccapability\u003e \"...\" --format json` and read the `done` event's `session_id`; pass `--session` to continue the same session",
          "Configure with `deeptutor config apply setup.json --check` first, naming keys through `api_key_env`; literal keys are rejected",
          "Before exposing it beyond one machine, enable sign-in in `auth.json`, set exact `cors_origins` and set `BACKEND_HOST=127.0.0.1` where loopback is wanted",
          "Run 1.4.10 or later. Earlier versions carry CVE-2026-51870 (shell tool RCE, fixed in 1.4.1) and CVE-2026-58168 (multi-user MCP bypass)",
          "Set `sandbox_allow_subprocess` to false where generated code must run only in the runner sidecar or bubblewrap"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62.7
          }
        ],
        "editorialScores": {
          "ergonomics": 63,
          "maintenance": 84,
          "payments": 60,
          "reliability": 78,
          "schema": 71,
          "security": 51,
          "transparency": 65
        },
        "provenanceScore": 39,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-30",
            "maintenance": "2026-10-30",
            "payments": "2026-10-30",
            "reliability": "2026-10-30",
            "schema": "2026-10-30",
            "security": "2026-10-30",
            "transparency": "2026-10-30"
          },
          "last": "2026-10-30",
          "oldest": "2026-10-30",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install -U \"deeptutor[full]\"   # then: deeptutor init \u0026\u0026 deeptutor start   # or: docker run --rm -p 127.0.0.1:3782:3782 -v deeptutor-data:/app/data ghcr.io/hkuds/deeptutor:latest",
        "headless": {
          "command": "deeptutor run chat \"$TASK\" --format json"
        }
      },
      "letme": {
        "capability": "https://letme.dev/assistant.memory",
        "tool": "https://letme.dev/deeptutor"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "",
        "domain": "deeptutor.info",
        "domainRegistered": "2026-05-20",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/HKUDS/DeepTutor/releases",
        "securityTxt": "unknown",
        "checked": "2026-10-30",
        "notes": [
          "No legal entity is named. The repository belongs to the GitHub organisation HKUDS, the Data Intelligence Lab at the University of Hong Kong, and the README says the project is led by Bingxi Zhao within the HKUDS group.",
          "deeptutor.info's robots.txt disallows ClaudeBot, Claude-Web and anthropic-ai, so its pages were not read. Its terms, privacy page and security.txt are unknown.",
          "No SECURITY.md was found in the repository tree on 30 October 2026.",
          "RDAP gives a registration date of 20 May 2026 for deeptutor.info. The README dates the docs site's launch to 22 May 2026.",
          "There is no hosted endpoint. The API answers on the owner's own host."
        ],
        "score": 39
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/deeptutor.json"
    },
    "answer": "DeepTutor scores 62.7 (B) on agent readiness against LearnHarness's 59.3 (C), and leads in 4 of 7 scored categories. LearnHarness leads on transparency \u0026 trust.",
    "b": {
      "slug": "learnharness",
      "name": "LearnHarness",
      "vendor": "Amos Blomqvist",
      "vendorUrl": "https://learnharness.ai",
      "kind": "harness",
      "category": "personal-assistants",
      "summary": "LearnHarness is an open-source desktop app for macOS, Windows and Linux that tests what a learner already understands, plans a route to a goal, teaches step by step and keeps a local knowledge graph, using the learner's own model keys.",
      "url": "https://www.anchorterminal.com/tools/learnharness",
      "markdownUrl": "https://www.anchorterminal.com/tools/learnharness.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/learnharness.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/learnharness.json",
      "repo": "https://github.com/amosblomqvist/learnharness",
      "license": "AGPL-3.0-only",
      "transports": [],
      "packages": [],
      "auth": "none",
      "authNotes": "No LearnHarness account. The learner adds keys for model providers (OpenAI, Anthropic, Google, DeepSeek, OpenRouter and others), or one OpenAI-compatible endpoint, or signs in with ChatGPT, GitHub Copilot or Grok, or connects an installed Claude Code CLI. Deepgram (dictation) and Tavily or Brave (web search) take separate keys.",
      "pricing": "free",
      "pricingNotes": "Free under AGPL-3.0 with nothing to buy. Model usage is billed by the provider the learner configures, or counts against a ChatGPT, Copilot or Grok plan, and the app shows a live cost meter. The README says any future charge would be for convenience such as managed keys or hosting.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the README, the website, the skill or the source files read (checked 2026-10-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 4204,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-30"
      },
      "docsUrl": "https://github.com/amosblomqvist/learnharness/blob/main/docs/development.md",
      "capabilities": [
        "assistant.memory",
        "assistant.self-hosted",
        "memory.graph",
        "memory.read",
        "web.search"
      ],
      "tags": [
        "open-source",
        "local",
        "free",
        "no-card",
        "agpl",
        "desktop-app",
        "macos",
        "windows",
        "linux",
        "agent-skill",
        "typescript",
        "new"
      ],
      "lastRelease": "2026-10-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 59.3,
        "grade": "C",
        "agentReady": false,
        "rank": 648,
        "ranked": true,
        "rankOf": 1239,
        "categoryRank": 9,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 60,
          "maintenance": 71,
          "payments": 60,
          "reliability": 56,
          "schema": 63,
          "security": 52,
          "transparency": 60
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-30"
        },
        "negative": 0,
        "verdict": "The in-app agent reads files but cannot change them or run commands, and a bundled skill gives other agents a documented read-only view of sessions and the knowledge graph. The project is 14 days old at 0.4.0, its file reads reach the whole home directory without approval, and it has no security policy.",
        "bestFor": "A tutor for one learner that keeps a local record of sessions and a graph of propositions and reasoning chains.",
        "strengths": [
          "AGPL-3.0 source, with installers for macOS (signed and notarised), Windows and Linux on GitHub Releases",
          "A bundled agent skill with Python readers that print sessions and graph data as text or JSON and write nothing",
          "The in-app agent has no shell, write or send tool, and Claude Code runs with its built-in tools switched off",
          "The desktop server binds 127.0.0.1 and requires a per-launch 64-character secret header",
          "Nine releases from 17 to 29 October 2026, with CI running typecheck, tests, lint and three-OS builds on main"
        ],
        "weaknesses": [
          "The read, ls, find and grep tools resolve against the home directory with no allow list, and their output goes to the model provider",
          "Provider keys and ChatGPT sign-in credentials are stored as plaintext JSON at mode 0600, not in the OS keychain",
          "No SECURITY.md, security.txt, privacy policy or terms. learnharness.ai answers 404 for each",
          "0.x software created on 16 October 2026, with 265 open issues and pull requests and none of the 39 newest pull requests merged",
          "No outside agent can start or drive a lesson. The local HTTP API is for the app's own window"
        ],
        "agentNotes": [
          "Use the bundled skill (`skills/learnharness/SKILL.md`) to read a learner's record. It needs Python 3.10 or later and writes nothing",
          "Pass `--format json` before the subcommand, for example `python3 -B scripts/graph.py --format json propositions`",
          "Treat stored answer keys and teacher prose as model-authored. A proposition in the graph is not evidence the learner understood it",
          "Do not read `auth.json`, which sits one folder above the data folder and holds provider keys in plain text",
          "Close the app or re-read when a stable snapshot matters. The readers do not lock files while the app writes"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 59.3
          }
        ],
        "editorialScores": {
          "ergonomics": 60,
          "maintenance": 71,
          "payments": 60,
          "reliability": 56,
          "schema": 63,
          "security": 52,
          "transparency": 64
        },
        "provenanceScore": 56,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-30",
            "maintenance": "2026-10-30",
            "payments": "2026-10-30",
            "reliability": "2026-10-30",
            "schema": "2026-10-30",
            "security": "2026-10-30",
            "transparency": "2026-10-30"
          },
          "last": "2026-10-30",
          "oldest": "2026-10-30",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "letme": {
        "capability": "https://letme.dev/assistant.memory",
        "tool": "https://letme.dev/learnharness"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "No legal entity found. Copyright Amos Blomqvist",
        "domain": "learnharness.ai",
        "domainRegistered": "2026-10-09",
        "endpointOnVendorDomain": null,
        "terms": "https://raw.githubusercontent.com/amosblomqvist/learnharness/main/LICENSE",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/amosblomqvist/learnharness/releases",
        "securityTxt": "none",
        "checked": "2026-10-30",
        "notes": [
          "The footer of learnharness.ai reads © 2026 Amos Blomqvist, and `package.json` names Amos Blomqvist as author. No company is named.",
          "learnharness.ai/privacy, /terms, /llms.txt and /.well-known/security.txt return 404, and the repository has no SECURITY.md, so the AGPL-3.0 licence stands in for terms.",
          "RDAP (Identity Digital) gives learnharness.ai a registration date of 2026-10-09.",
          "The app runs on the learner's machine. Its only vendor-side service seen is the website, which a release workflow updates. Updates come from GitHub Releases.",
          "There is no CHANGELOG file. Each GitHub release carries its notes."
        ],
        "score": 56
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/learnharness.json"
    },
    "facts": [
      {
        "a": "Agent harness",
        "b": "Agent harness",
        "name": "Kind"
      },
      {
        "a": "HKUDS",
        "b": "Amos Blomqvist",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0",
        "b": "AGPL-3.0-only",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-28",
        "b": "2026-10-29",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "no date given",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "51k stars",
        "b": "4.2k stars",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "DeepTutor scores 62.7 (B) on agent readiness against LearnHarness's 59.3 (C), and leads in 4 of 7 scored categories. LearnHarness leads on transparency \u0026 trust.",
        "question": "Which is better for AI agents, DeepTutor or LearnHarness?"
      },
      {
        "answer": "Yes. DeepTutor is open source (Apache-2.0). LearnHarness is open source (AGPL-3.0-only).",
        "question": "Are DeepTutor and LearnHarness open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 78 against 56",
          "Schema \u0026 documentation, 71 against 63",
          "Maintenance \u0026 community, 84 against 71"
        ],
        "also": null,
        "goodFor": "A learner, a teacher or a small group that wants a self-hosted tutor over their own documents, with quizzes, research reports, memory and IM companions, or for an agent that hands study tasks to it through the JSON CLI.",
        "slug": "deeptutor",
        "watchFor": "The default launch binds the backend to 0.0.0.0 with sign-in off and CORS open to any origin with credentials"
      },
      {
        "aheadOn": [
          "Transparency \u0026 trust, 60 against 52"
        ],
        "also": [
          "No incidents deducted, where DeepTutor loses 3 points for them"
        ],
        "goodFor": "A tutor for one learner that keeps a local record of sessions and a graph of propositions and reasoning chains.",
        "slug": "learnharness",
        "watchFor": "The read, ls, find and grep tools resolve against the home directory with no allow list, and their output goes to the model provider"
      }
    ],
    "job": {
      "capability": "assistant.memory",
      "name": "Assistants that remember you"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/asaply-vs-deeptutor.json",
        "title": "asaply vs DeepTutor",
        "url": "https://www.anchorterminal.com/compare/asaply-vs-deeptutor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/asmi-vs-deeptutor.json",
        "title": "Asmi vs DeepTutor",
        "url": "https://www.anchorterminal.com/compare/asmi-vs-deeptutor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-deeptutor.json",
        "title": "AstrBot vs DeepTutor",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-deeptutor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boba-vs-deeptutor.json",
        "title": "Boba vs DeepTutor",
        "url": "https://www.anchorterminal.com/compare/boba-vs-deeptutor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brea-vs-deeptutor.json",
        "title": "Brea vs DeepTutor",
        "url": "https://www.anchorterminal.com/compare/brea-vs-deeptutor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/asaply-vs-learnharness.json",
        "title": "asaply vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/asaply-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/asmi-vs-learnharness.json",
        "title": "Asmi vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/asmi-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atticus-vs-deeptutor.json",
        "title": "Atticus vs DeepTutor",
        "url": "https://www.anchorterminal.com/compare/atticus-vs-deeptutor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/atticus-vs-learnharness.json",
        "title": "Atticus vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/atticus-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boba-vs-learnharness.json",
        "title": "Boba vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/boba-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boski-vs-deeptutor.json",
        "title": "Boski vs DeepTutor",
        "url": "https://www.anchorterminal.com/compare/boski-vs-deeptutor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boski-vs-learnharness.json",
        "title": "Boski vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/boski-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brea-vs-learnharness.json",
        "title": "Brea vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/brea-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/caddy-app-vs-deeptutor.json",
        "title": "Caddy vs DeepTutor",
        "url": "https://www.anchorterminal.com/compare/caddy-app-vs-deeptutor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/caddy-app-vs-learnharness.json",
        "title": "Caddy vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/caddy-app-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-duet-vs-deeptutor.json",
        "title": "Claude Duet vs DeepTutor",
        "url": "https://www.anchorterminal.com/compare/claude-duet-vs-deeptutor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-duet-vs-learnharness.json",
        "title": "Claude Duet vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/claude-duet-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cowagent-vs-deeptutor.json",
        "title": "CowAgent vs DeepTutor",
        "url": "https://www.anchorterminal.com/compare/cowagent-vs-deeptutor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cowagent-vs-learnharness.json",
        "title": "CowAgent vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/cowagent-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-del.json",
        "title": "DeepTutor vs Del",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-del"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-folk-nozomio.json",
        "title": "DeepTutor vs folk",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-folk-nozomio"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-gaia.json",
        "title": "DeepTutor vs GAIA",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-gaia"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-gemini-spark.json",
        "title": "DeepTutor vs Gemini Spark",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-gemini-spark"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-grok-bot.json",
        "title": "DeepTutor vs Grok Bot",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-grok-bot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-hark-pro.json",
        "title": "DeepTutor vs Hark Pro",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-hark-pro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-haven.json",
        "title": "DeepTutor vs Haven",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-haven"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-hermes-agent.json",
        "title": "DeepTutor vs Hermes Agent",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-hermes-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-hirealpha.json",
        "title": "DeepTutor vs HireAlpha",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-hirealpha"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-instinct.json",
        "title": "DeepTutor vs Instinct",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-instinct"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-ironclaw.json",
        "title": "DeepTutor vs IronClaw",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-ironclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-leon.json",
        "title": "DeepTutor vs Leon",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-leon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-lindy.json",
        "title": "DeepTutor vs Lindy",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-lindy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-lobby-os.json",
        "title": "DeepTutor vs Lobby",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-lobby-os"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-nanobot.json",
        "title": "DeepTutor vs nanobot",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-nanoclaw.json",
        "title": "DeepTutor vs NanoClaw",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-nanoclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-natura.json",
        "title": "DeepTutor vs Natura tinyNature",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-natura"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-openai-dots.json",
        "title": "DeepTutor vs Dots",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-openai-dots"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-openclaw.json",
        "title": "DeepTutor vs OpenClaw",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-openclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-openduet.json",
        "title": "DeepTutor vs OpenDuet",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-openduet"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-openinstinct.json",
        "title": "DeepTutor vs OpenInstinct",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-openinstinct"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-orbits.json",
        "title": "DeepTutor vs Orbits",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-orbits"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-orchid-ai.json",
        "title": "DeepTutor vs Orchid",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-orchid-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-pally.json",
        "title": "DeepTutor vs Pally",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-pally"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-picoclaw.json",
        "title": "DeepTutor vs PicoClaw",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-picoclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-poke.json",
        "title": "DeepTutor vs Poke",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-poke"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-qwenpaw.json",
        "title": "DeepTutor vs QwenPaw",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-qwenpaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-szn.json",
        "title": "DeepTutor vs szn",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-szn"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-tab-bot.json",
        "title": "DeepTutor vs Tab",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-tab-bot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-talorys.json",
        "title": "DeepTutor vs Talorys",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-talorys"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-tasker-ai.json",
        "title": "DeepTutor vs Tasker AI",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-tasker-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-tomo.json",
        "title": "DeepTutor vs Tomo",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-tomo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-town.json",
        "title": "DeepTutor vs Town",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-wajo.json",
        "title": "DeepTutor vs Wajo (Fo)",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-wajo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-zapia.json",
        "title": "DeepTutor vs Zapia",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-zapia"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-zeroclaw.json",
        "title": "DeepTutor vs ZeroClaw",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-zeroclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deeptutor-vs-zo-computer.json",
        "title": "DeepTutor vs Zo Computer",
        "url": "https://www.anchorterminal.com/compare/deeptutor-vs-zo-computer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/del-vs-learnharness.json",
        "title": "Del vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/del-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/folk-nozomio-vs-learnharness.json",
        "title": "folk vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/folk-nozomio-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gaia-vs-learnharness.json",
        "title": "GAIA vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/gaia-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-spark-vs-learnharness.json",
        "title": "Gemini Spark vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/gemini-spark-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grok-bot-vs-learnharness.json",
        "title": "Grok Bot vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/grok-bot-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hark-pro-vs-learnharness.json",
        "title": "Hark Pro vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/hark-pro-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/haven-vs-learnharness.json",
        "title": "Haven vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/haven-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hermes-agent-vs-learnharness.json",
        "title": "Hermes Agent vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/hermes-agent-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hirealpha-vs-learnharness.json",
        "title": "HireAlpha vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/hirealpha-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/instinct-vs-learnharness.json",
        "title": "Instinct vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/instinct-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ironclaw-vs-learnharness.json",
        "title": "IronClaw vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/ironclaw-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-leon.json",
        "title": "LearnHarness vs Leon",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-leon"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-lindy.json",
        "title": "LearnHarness vs Lindy",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-lindy"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-lobby-os.json",
        "title": "LearnHarness vs Lobby",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-lobby-os"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-nanobot.json",
        "title": "LearnHarness vs nanobot",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-nanobot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-nanoclaw.json",
        "title": "LearnHarness vs NanoClaw",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-nanoclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-natura.json",
        "title": "LearnHarness vs Natura tinyNature",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-natura"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-openai-dots.json",
        "title": "LearnHarness vs Dots",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-openai-dots"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-openclaw.json",
        "title": "LearnHarness vs OpenClaw",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-openclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-openduet.json",
        "title": "LearnHarness vs OpenDuet",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-openduet"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-openinstinct.json",
        "title": "LearnHarness vs OpenInstinct",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-openinstinct"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-orbits.json",
        "title": "LearnHarness vs Orbits",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-orbits"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-orchid-ai.json",
        "title": "LearnHarness vs Orchid",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-orchid-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-pally.json",
        "title": "LearnHarness vs Pally",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-pally"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-picoclaw.json",
        "title": "LearnHarness vs PicoClaw",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-picoclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-poke.json",
        "title": "LearnHarness vs Poke",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-poke"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-qwenpaw.json",
        "title": "LearnHarness vs QwenPaw",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-qwenpaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-szn.json",
        "title": "LearnHarness vs szn",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-szn"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-tab-bot.json",
        "title": "LearnHarness vs Tab",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-tab-bot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-talorys.json",
        "title": "LearnHarness vs Talorys",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-talorys"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-tasker-ai.json",
        "title": "LearnHarness vs Tasker AI",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-tasker-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-tomo.json",
        "title": "LearnHarness vs Tomo",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-tomo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-town.json",
        "title": "LearnHarness vs Town",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-town"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-wajo.json",
        "title": "LearnHarness vs Wajo (Fo)",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-wajo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-zapia.json",
        "title": "LearnHarness vs Zapia",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-zapia"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-zeroclaw.json",
        "title": "LearnHarness vs ZeroClaw",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-zeroclaw"
      },
      {
        "json": "https://www.anchorterminal.com/compare/learnharness-vs-zo-computer.json",
        "title": "LearnHarness vs Zo Computer",
        "url": "https://www.anchorterminal.com/compare/learnharness-vs-zo-computer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/astrbot-vs-learnharness.json",
        "title": "AstrBot vs LearnHarness",
        "url": "https://www.anchorterminal.com/compare/astrbot-vs-learnharness"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ai-job-search-vs-deeptutor.json",
        "title": "AI Job Search vs DeepTutor",
        "url": "https://www.anchorterminal.com/compare/ai-job-search-vs-deeptutor"
      }
    ],
    "scores": [
      {
        "by": 22,
        "deeptutor": 78,
        "edge": "deeptutor",
        "key": "reliability",
        "learnharness": 56,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 8,
        "deeptutor": 71,
        "edge": "deeptutor",
        "key": "schema",
        "learnharness": 63,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 3,
        "deeptutor": 63,
        "edge": "deeptutor",
        "key": "ergonomics",
        "learnharness": 60,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 1,
        "deeptutor": 51,
        "edge": "learnharness",
        "key": "security",
        "learnharness": 52,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 0,
        "deeptutor": 60,
        "edge": "",
        "key": "payments",
        "learnharness": 60,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 13,
        "deeptutor": 84,
        "edge": "deeptutor",
        "key": "maintenance",
        "learnharness": 71,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 8,
        "deeptutor": 52,
        "edge": "learnharness",
        "key": "transparency",
        "learnharness": 60,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "DeepTutor scores 62.7 (B) on agent readiness against LearnHarness's 59.3 (C), and leads in 4 of 7 scored categories. LearnHarness leads on transparency \u0026 trust. Both do assistants that remember you.",
    "tutorials": [],
    "verdicts": {
      "deeptutor": "DeepTutor runs on the owner's machine under Apache 2.0, ships releases every few days with upgrade notes, and gives other agents a JSON CLI with resumable sessions. Its default launch binds all interfaces with sign-in off and permissive CORS, there is no security policy, and two CVEs in 2026 covered a shell-tool RCE and a multi-user MCP bypass, both fixed.",
      "learnharness": "The in-app agent reads files but cannot change them or run commands, and a bundled skill gives other agents a documented read-only view of sessions and the knowledge graph. The project is 14 days old at 0.4.0, its file reads reach the whole home directory without approval, and it has no security policy."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/deeptutor-vs-learnharness",
    "json": "https://www.anchorterminal.com/compare/deeptutor-vs-learnharness.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/deeptutor-vs-learnharness.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/deeptutor-vs-learnharness.min.md"
  },
  "markdown": "DeepTutor scores 62.7 (B) on agent readiness against LearnHarness's 59.3 (C), and leads in 4 of 7 scored categories. LearnHarness leads on transparency \u0026 trust. Both do assistants that remember you.\n\n- DeepTutor: grade B, 62.7/100, rank #494 of 1239. Markdown https://www.anchorterminal.com/tools/deeptutor.md · JSON https://www.anchorterminal.com/api/v1/tools/deeptutor.json\n- LearnHarness: grade C, 59.3/100, rank #648 of 1239. Markdown https://www.anchorterminal.com/tools/learnharness.md · JSON https://www.anchorterminal.com/api/v1/tools/learnharness.json\n- Best AI personal assistants that act for one person: https://www.anchorterminal.com/best/personal-assistants/index.md\n- All 1196 assistants comparisons: https://www.anchorterminal.com/compare/personal-assistants/index.md\n\n## Which one, for what\n\n### DeepTutor (B)\n\nGood for: A learner, a teacher or a small group that wants a self-hosted tutor over their own documents, with quizzes, research reports, memory and IM companions, or for an agent that hands study tasks to it through the JSON CLI.\n\nAhead on:\n- Reliability, 78 against 56\n- Schema \u0026 documentation, 71 against 63\n- Maintenance \u0026 community, 84 against 71\n\nWatch for: The default launch binds the backend to 0.0.0.0 with sign-in off and CORS open to any origin with credentials\n\n### LearnHarness (C)\n\nGood for: A tutor for one learner that keeps a local record of sessions and a graph of propositions and reasoning chains.\n\nAhead on:\n- Transparency \u0026 trust, 60 against 52\n\nAlso in its favour:\n- No incidents deducted, where DeepTutor loses 3 points for them\n\nWatch for: The read, ls, find and grep tools resolve against the home directory with no allow list, and their output goes to the model provider\n\n\n## Score by category\n\n| Category | Weight | DeepTutor | LearnHarness | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 78 | 56 | DeepTutor +22 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 71 | 63 | DeepTutor +8 |\n| Agent ergonomics | 13% (16.2 this run) | 63 | 60 | DeepTutor +3 |\n| Security \u0026 auth | 14% (17.5 this run) | 51 | 52 | LearnHarness +1 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 60 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 84 | 71 | DeepTutor +13 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 52 | 60 | LearnHarness +8 |\n| Negative events | ≤15 | -3 | 0 | |\n| **Total** | | **62.7 · B** | **59.3 · C** | |\n\n## Facts side by side\n\n| Fact | DeepTutor | LearnHarness |\n| --- | --- | --- |\n| Kind | Agent harness | Agent harness |\n| Vendor | HKUDS | Amos Blomqvist |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | None | None |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | Apache-2.0 | AGPL-3.0-only |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | 2026-10-28 | 2026-10-29 |\n| Terms last updated | no document linked | no date given |\n| Privacy policy last updated | no document linked | no document linked |\n| Customer content may train models |  | not found in the text |\n| Terms restrict automated access |  | not found in the text |\n| Terms restrict benchmarking |  | not found in the text |\n| Terms or service can change without notice |  | not found in the text |\n| Arbitration or class-action waiver |  | not found in the text |\n| Popularity | 51k stars | 4.2k stars |\n\n## Verdicts\n\n**DeepTutor.** DeepTutor runs on the owner's machine under Apache 2.0, ships releases every few days with upgrade notes, and gives other agents a JSON CLI with resumable sessions. Its default launch binds all interfaces with sign-in off and permissive CORS, there is no security policy, and two CVEs in 2026 covered a shell-tool RCE and a multi-user MCP bypass, both fixed.\n\n**LearnHarness.** The in-app agent reads files but cannot change them or run commands, and a bundled skill gives other agents a documented read-only view of sessions and the knowledge graph. The project is 14 days old at 0.4.0, its file reads reach the whole home directory without approval, and it has no security policy.\n\n## Before you call either\n\n### DeepTutor\n\n1. Run `deeptutor run \u003ccapability\u003e \"...\" --format json` and read the `done` event's `session_id`; pass `--session` to continue the same session\n2. Configure with `deeptutor config apply setup.json --check` first, naming keys through `api_key_env`; literal keys are rejected\n3. Before exposing it beyond one machine, enable sign-in in `auth.json`, set exact `cors_origins` and set `BACKEND_HOST=127.0.0.1` where loopback is wanted\n4. Run 1.4.10 or later. Earlier versions carry CVE-2026-51870 (shell tool RCE, fixed in 1.4.1) and CVE-2026-58168 (multi-user MCP bypass)\n5. Set `sandbox_allow_subprocess` to false where generated code must run only in the runner sidecar or bubblewrap\n\n### LearnHarness\n\n1. Use the bundled skill (`skills/learnharness/SKILL.md`) to read a learner's record. It needs Python 3.10 or later and writes nothing\n2. Pass `--format json` before the subcommand, for example `python3 -B scripts/graph.py --format json propositions`\n3. Treat stored answer keys and teacher prose as model-authored. A proposition in the graph is not evidence the learner understood it\n4. Do not read `auth.json`, which sits one folder above the data folder and holds provider keys in plain text\n5. Close the app or re-read when a stable snapshot matters. The readers do not lock files while the app writes\n\n## Questions\n\n### Which is better for AI agents, DeepTutor or LearnHarness?\n\nDeepTutor scores 62.7 (B) on agent readiness against LearnHarness's 59.3 (C), and leads in 4 of 7 scored categories. LearnHarness leads on transparency \u0026 trust.\n\n### Are DeepTutor and LearnHarness open source?\n\nYes. DeepTutor is open source (Apache-2.0). LearnHarness is open source (AGPL-3.0-only).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/deeptutor-vs-learnharness.json, and with the fewest tokens: https://www.anchorterminal.com/compare/deeptutor-vs-learnharness.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"deeptutor\", \"b\": \"learnharness\"}`. From a terminal: `anchor compare deeptutor learnharness`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/deeptutor.json and https://www.anchorterminal.com/api/v1/tools/learnharness.json\n\n## Other comparisons with DeepTutor or LearnHarness\n\n- [asaply vs DeepTutor](https://www.anchorterminal.com/compare/asaply-vs-deeptutor.md)\n- [Asmi vs DeepTutor](https://www.anchorterminal.com/compare/asmi-vs-deeptutor.md)\n- [AstrBot vs DeepTutor](https://www.anchorterminal.com/compare/astrbot-vs-deeptutor.md)\n- [Boba vs DeepTutor](https://www.anchorterminal.com/compare/boba-vs-deeptutor.md)\n- [Brea vs DeepTutor](https://www.anchorterminal.com/compare/brea-vs-deeptutor.md)\n- [asaply vs LearnHarness](https://www.anchorterminal.com/compare/asaply-vs-learnharness.md)\n- [Asmi vs LearnHarness](https://www.anchorterminal.com/compare/asmi-vs-learnharness.md)\n- [Atticus vs DeepTutor](https://www.anchorterminal.com/compare/atticus-vs-deeptutor.md)\n- [Atticus vs LearnHarness](https://www.anchorterminal.com/compare/atticus-vs-learnharness.md)\n- [Boba vs LearnHarness](https://www.anchorterminal.com/compare/boba-vs-learnharness.md)\n- [Boski vs DeepTutor](https://www.anchorterminal.com/compare/boski-vs-deeptutor.md)\n- [Boski vs LearnHarness](https://www.anchorterminal.com/compare/boski-vs-learnharness.md)\n- [Brea vs LearnHarness](https://www.anchorterminal.com/compare/brea-vs-learnharness.md)\n- [Caddy vs DeepTutor](https://www.anchorterminal.com/compare/caddy-app-vs-deeptutor.md)\n- [Caddy vs LearnHarness](https://www.anchorterminal.com/compare/caddy-app-vs-learnharness.md)\n- [Claude Duet vs DeepTutor](https://www.anchorterminal.com/compare/claude-duet-vs-deeptutor.md)\n- [Claude Duet vs LearnHarness](https://www.anchorterminal.com/compare/claude-duet-vs-learnharness.md)\n- [CowAgent vs DeepTutor](https://www.anchorterminal.com/compare/cowagent-vs-deeptutor.md)\n- [CowAgent vs LearnHarness](https://www.anchorterminal.com/compare/cowagent-vs-learnharness.md)\n- [DeepTutor vs Del](https://www.anchorterminal.com/compare/deeptutor-vs-del.md)\n- [DeepTutor vs folk](https://www.anchorterminal.com/compare/deeptutor-vs-folk-nozomio.md)\n- [DeepTutor vs GAIA](https://www.anchorterminal.com/compare/deeptutor-vs-gaia.md)\n- [DeepTutor vs Gemini Spark](https://www.anchorterminal.com/compare/deeptutor-vs-gemini-spark.md)\n- [DeepTutor vs Grok Bot](https://www.anchorterminal.com/compare/deeptutor-vs-grok-bot.md)\n- [DeepTutor vs Hark Pro](https://www.anchorterminal.com/compare/deeptutor-vs-hark-pro.md)\n- [DeepTutor vs Haven](https://www.anchorterminal.com/compare/deeptutor-vs-haven.md)\n- [DeepTutor vs Hermes Agent](https://www.anchorterminal.com/compare/deeptutor-vs-hermes-agent.md)\n- [DeepTutor vs HireAlpha](https://www.anchorterminal.com/compare/deeptutor-vs-hirealpha.md)\n- [DeepTutor vs Instinct](https://www.anchorterminal.com/compare/deeptutor-vs-instinct.md)\n- [DeepTutor vs IronClaw](https://www.anchorterminal.com/compare/deeptutor-vs-ironclaw.md)\n- [DeepTutor vs Leon](https://www.anchorterminal.com/compare/deeptutor-vs-leon.md)\n- [DeepTutor vs Lindy](https://www.anchorterminal.com/compare/deeptutor-vs-lindy.md)\n- [DeepTutor vs Lobby](https://www.anchorterminal.com/compare/deeptutor-vs-lobby-os.md)\n- [DeepTutor vs nanobot](https://www.anchorterminal.com/compare/deeptutor-vs-nanobot.md)\n- [DeepTutor vs NanoClaw](https://www.anchorterminal.com/compare/deeptutor-vs-nanoclaw.md)\n- [DeepTutor vs Natura tinyNature](https://www.anchorterminal.com/compare/deeptutor-vs-natura.md)\n- [DeepTutor vs Dots](https://www.anchorterminal.com/compare/deeptutor-vs-openai-dots.md)\n- [DeepTutor vs OpenClaw](https://www.anchorterminal.com/compare/deeptutor-vs-openclaw.md)\n- [DeepTutor vs OpenDuet](https://www.anchorterminal.com/compare/deeptutor-vs-openduet.md)\n- [DeepTutor vs OpenInstinct](https://www.anchorterminal.com/compare/deeptutor-vs-openinstinct.md)\n- [DeepTutor vs Orbits](https://www.anchorterminal.com/compare/deeptutor-vs-orbits.md)\n- [DeepTutor vs Orchid](https://www.anchorterminal.com/compare/deeptutor-vs-orchid-ai.md)\n- [DeepTutor vs Pally](https://www.anchorterminal.com/compare/deeptutor-vs-pally.md)\n- [DeepTutor vs PicoClaw](https://www.anchorterminal.com/compare/deeptutor-vs-picoclaw.md)\n- [DeepTutor vs Poke](https://www.anchorterminal.com/compare/deeptutor-vs-poke.md)\n- [DeepTutor vs QwenPaw](https://www.anchorterminal.com/compare/deeptutor-vs-qwenpaw.md)\n- [DeepTutor vs szn](https://www.anchorterminal.com/compare/deeptutor-vs-szn.md)\n- [DeepTutor vs Tab](https://www.anchorterminal.com/compare/deeptutor-vs-tab-bot.md)\n- [DeepTutor vs Talorys](https://www.anchorterminal.com/compare/deeptutor-vs-talorys.md)\n- [DeepTutor vs Tasker AI](https://www.anchorterminal.com/compare/deeptutor-vs-tasker-ai.md)\n- [DeepTutor vs Tomo](https://www.anchorterminal.com/compare/deeptutor-vs-tomo.md)\n- [DeepTutor vs Town](https://www.anchorterminal.com/compare/deeptutor-vs-town.md)\n- [DeepTutor vs Wajo (Fo)](https://www.anchorterminal.com/compare/deeptutor-vs-wajo.md)\n- [DeepTutor vs Zapia](https://www.anchorterminal.com/compare/deeptutor-vs-zapia.md)\n- [DeepTutor vs ZeroClaw](https://www.anchorterminal.com/compare/deeptutor-vs-zeroclaw.md)\n- [DeepTutor vs Zo Computer](https://www.anchorterminal.com/compare/deeptutor-vs-zo-computer.md)\n- [Del vs LearnHarness](https://www.anchorterminal.com/compare/del-vs-learnharness.md)\n- [folk vs LearnHarness](https://www.anchorterminal.com/compare/folk-nozomio-vs-learnharness.md)\n- [GAIA vs LearnHarness](https://www.anchorterminal.com/compare/gaia-vs-learnharness.md)\n- [Gemini Spark vs LearnHarness](https://www.anchorterminal.com/compare/gemini-spark-vs-learnharness.md)\n- [Grok Bot vs LearnHarness](https://www.anchorterminal.com/compare/grok-bot-vs-learnharness.md)\n- [Hark Pro vs LearnHarness](https://www.anchorterminal.com/compare/hark-pro-vs-learnharness.md)\n- [Haven vs LearnHarness](https://www.anchorterminal.com/compare/haven-vs-learnharness.md)\n- [Hermes Agent vs LearnHarness](https://www.anchorterminal.com/compare/hermes-agent-vs-learnharness.md)\n- [HireAlpha vs LearnHarness](https://www.anchorterminal.com/compare/hirealpha-vs-learnharness.md)\n- [Instinct vs LearnHarness](https://www.anchorterminal.com/compare/instinct-vs-learnharness.md)\n- [IronClaw vs LearnHarness](https://www.anchorterminal.com/compare/ironclaw-vs-learnharness.md)\n- [LearnHarness vs Leon](https://www.anchorterminal.com/compare/learnharness-vs-leon.md)\n- [LearnHarness vs Lindy](https://www.anchorterminal.com/compare/learnharness-vs-lindy.md)\n- [LearnHarness vs Lobby](https://www.anchorterminal.com/compare/learnharness-vs-lobby-os.md)\n- [LearnHarness vs nanobot](https://www.anchorterminal.com/compare/learnharness-vs-nanobot.md)\n- [LearnHarness vs NanoClaw](https://www.anchorterminal.com/compare/learnharness-vs-nanoclaw.md)\n- [LearnHarness vs Natura tinyNature](https://www.anchorterminal.com/compare/learnharness-vs-natura.md)\n- [LearnHarness vs Dots](https://www.anchorterminal.com/compare/learnharness-vs-openai-dots.md)\n- [LearnHarness vs OpenClaw](https://www.anchorterminal.com/compare/learnharness-vs-openclaw.md)\n- [LearnHarness vs OpenDuet](https://www.anchorterminal.com/compare/learnharness-vs-openduet.md)\n- [LearnHarness vs OpenInstinct](https://www.anchorterminal.com/compare/learnharness-vs-openinstinct.md)\n- [LearnHarness vs Orbits](https://www.anchorterminal.com/compare/learnharness-vs-orbits.md)\n- [LearnHarness vs Orchid](https://www.anchorterminal.com/compare/learnharness-vs-orchid-ai.md)\n- [LearnHarness vs Pally](https://www.anchorterminal.com/compare/learnharness-vs-pally.md)\n- [LearnHarness vs PicoClaw](https://www.anchorterminal.com/compare/learnharness-vs-picoclaw.md)\n- [LearnHarness vs Poke](https://www.anchorterminal.com/compare/learnharness-vs-poke.md)\n- [LearnHarness vs QwenPaw](https://www.anchorterminal.com/compare/learnharness-vs-qwenpaw.md)\n- [LearnHarness vs szn](https://www.anchorterminal.com/compare/learnharness-vs-szn.md)\n- [LearnHarness vs Tab](https://www.anchorterminal.com/compare/learnharness-vs-tab-bot.md)\n- [LearnHarness vs Talorys](https://www.anchorterminal.com/compare/learnharness-vs-talorys.md)\n- [LearnHarness vs Tasker AI](https://www.anchorterminal.com/compare/learnharness-vs-tasker-ai.md)\n- [LearnHarness vs Tomo](https://www.anchorterminal.com/compare/learnharness-vs-tomo.md)\n- [LearnHarness vs Town](https://www.anchorterminal.com/compare/learnharness-vs-town.md)\n- [LearnHarness vs Wajo (Fo)](https://www.anchorterminal.com/compare/learnharness-vs-wajo.md)\n- [LearnHarness vs Zapia](https://www.anchorterminal.com/compare/learnharness-vs-zapia.md)\n- [LearnHarness vs ZeroClaw](https://www.anchorterminal.com/compare/learnharness-vs-zeroclaw.md)\n- [LearnHarness vs Zo Computer](https://www.anchorterminal.com/compare/learnharness-vs-zo-computer.md)\n- [AstrBot vs LearnHarness](https://www.anchorterminal.com/compare/astrbot-vs-learnharness.md)\n- [AI Job Search vs DeepTutor](https://www.anchorterminal.com/compare/ai-job-search-vs-deeptutor.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-31",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "DeepTutor vs LearnHarness",
        "url": ""
      }
    ],
    "description": "DeepTutor scores 62.7 (B) to LearnHarness's 59.3 (C) for assistants that remember you. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "DeepTutor B 62.7",
      "LearnHarness C 59.3",
      "scores"
    ],
    "h1": "DeepTutor vs LearnHarness",
    "image": "https://www.anchorterminal.com/assets/og/compare-deeptutor-vs-learnharness.png",
    "path": "/compare/deeptutor-vs-learnharness",
    "published": "2026-10-01",
    "section": "tools",
    "title": "DeepTutor vs LearnHarness for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-30",
    "url": "https://www.anchorterminal.com/compare/deeptutor-vs-learnharness"
  },
  "tokens": {
    "markdown": 4000,
    "slim": 630
  },
  "version": 1
}
