{
  "data": {
    "a": {
      "slug": "guilds-run",
      "name": "guilds.run",
      "vendor": "Cigale AI",
      "vendorUrl": "https://guilds.run",
      "kind": "framework",
      "category": "frameworks",
      "summary": "Open-source, self-hosted system from Cigale AI for standing teams of AI agents, each with its own role, model and tools. A guild shares chat, notes and tables, and every run keeps the prompt, tool calls and memory changes.",
      "url": "https://www.anchorterminal.com/tools/guilds-run",
      "markdownUrl": "https://www.anchorterminal.com/tools/guilds-run.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/guilds-run.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/guilds-run.json",
      "dns": "guilds-run.grade.anchorterminal.com",
      "repo": "https://github.com/CigaleAI/guilds",
      "license": "AGPL-3.0-only",
      "transports": [],
      "packages": [],
      "auth": "api-key",
      "authNotes": "The box has no model key of its own. Each organisation pastes a key for OpenAI, OpenRouter, xAI, DeepInfra or Kimi Code, or points at a local OpenAI-compatible endpoint, and the key is sent only to that provider. The web app on 127.0.0.1:8080 has no login by default; whoever reaches the port is the operator. AUTH_MODE=trusted-header takes identity from an authenticating proxy with a shared secret.",
      "pricing": "free",
      "pricingNotes": "Free under AGPL-3.0 to run yourself, with model usage billed by your own provider and no spend cap set by guilds.run. A hosted edition from $19 a month is listed as coming soon and not available on 14 October 2026 (https://www.guilds.run/pricing).",
      "priceSummary": "Free · OSS",
      "where": "library",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the repository, the docs or on guilds.run (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 57,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://docs.guilds.run/",
      "capabilities": [
        "agent.framework",
        "agent.multi-agent",
        "agent.mcp-client",
        "agent.durable"
      ],
      "tags": [
        "framework",
        "open-source",
        "self-hosted",
        "local",
        "docker",
        "typescript",
        "free",
        "no-card",
        "pre-1.0"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 53.4,
        "grade": "D",
        "agentReady": false,
        "rank": 945,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 20,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 67,
          "maintenance": 21,
          "payments": 60,
          "reliability": 43,
          "schema": 58,
          "security": 68,
          "transparency": 60
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-04"
        },
        "negative": -2,
        "negativeNotes": [
          "2026-10-14, still live on 2026-11-04. The home page says each agent has its own computer, and its script example reads sandboxed in scout's workspace. Since the change of 13 October 2026 (pull request #8, per-org machines), agents are placed on shared machines, and the vendor's own register (SEC-24, open and accepted) and machines page say agents on one machine can read each other's homes, git tokens, browser sessions and running commands' environments. The footer also links to terms and privacy pages that return 404. The docs state the shared-machine risk plainly, so 2 points. https://www.guilds.run/ and https://github.com/CigaleAI/guilds/blob/main/docs/architecture/security-register.md"
        ],
        "verdict": "A self-hosted multi-agent system that records each run's prompt, tool calls and memory changes, with per-agent models and tools and no telemetry by default. It has no tagged release, version or package, so users track main, its own security register lists 28 open issues of 58, and the site's terms and privacy links return 404.",
        "bestFor": "A person or small team that wants a standing, inspectable team of agents with schedules, shared tables and a web app, run on one machine, and is comfortable tracking main.",
        "strengths": [
          "Every run stores the prompt the model saw, each tool call and result, and versioned memory with the author of each change",
          "Free under AGPL-3.0, with Sentry off unless SENTRY_DSN is set and the model catalogue fetch switchable",
          "MCP tools that write or are marked destructive start Off for a new login, and each agent is offered only the tools turned on for it",
          "CI runs typecheck, lint, unit tests and a smoke test of the Compose stack on every push",
          "A public security register records 58 issues with status, exposure and residual risk"
        ],
        "weaknesses": [
          "No tagged release, version number or published image on 4 November 2026. Users install whatever is on main, including breaking changes",
          "28 issues in the vendor's security register are open, among them shared machines (SEC-24), root shells (SEC-6) and prompt injection into coding agents (SEC-8)",
          "No login on the default box. Whoever reaches port 8080 is the operator, and remote use needs a proxy or tailnet",
          "Terms and privacy links on guilds.run return 404, and no privacy statement for the software was found",
          "The changelog holds only an Unreleased section with no dates"
        ],
        "agentNotes": [
          "Keep the box on loopback or behind an authenticating proxy with AUTH_MODE=trusted-header. The default mode does not authenticate",
          "Put agents that hold different secrets or GitHub tokens on different machines. Agents on one machine can read each other's homes and tokens",
          "Back up the .env file written by ./setup.sh. It holds the only copy of the key that encrypts stored credentials",
          "Pin a commit of main when you deploy and read CHANGELOG.md's Unreleased section before pulling. Breaking changes land on main",
          "Set MODELS_DEV_URL empty for an offline box. The model catalogue is otherwise fetched from models.dev hourly"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 53.4
          }
        ],
        "editorialScores": {
          "ergonomics": 67,
          "maintenance": 21,
          "payments": 60,
          "reliability": 43,
          "schema": 58,
          "security": 68,
          "transparency": 63
        },
        "provenanceScore": 56,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-04",
            "maintenance": "2026-11-04",
            "payments": "2026-11-04",
            "reliability": "2026-11-04",
            "schema": "2026-11-04",
            "security": "2026-11-04",
            "transparency": "2026-11-04"
          },
          "last": "2026-11-04",
          "lastMoved": "2026-11-04",
          "oldest": "2026-11-04",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "git clone https://github.com/CigaleAI/guilds.git \u0026\u0026 cd guilds \u0026\u0026 ./setup.sh \u0026\u0026 docker compose up --detach --wait"
      },
      "letme": {
        "capability": "https://letme.dev/agent.framework",
        "tool": "https://letme.dev/guilds-run"
      },
      "area": "frameworks",
      "provenance": {
        "legalEntity": "Cigale AI",
        "domain": "guilds.run",
        "domainRegistered": "2026-09-19",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/CigaleAI/guilds/blob/main/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-11-04",
        "notes": [
          "The site footer says Cigale is the company behind guilds.run, and THIRD_PARTY_NOTICES.md reads copyright Cigale AI. No legal form or address was found.",
          "The footer links to https://www.guilds.run/terms and https://www.guilds.run/privacy, and both returned 404 on 14 October and 4 November 2026.",
          "www.guilds.run/.well-known/security.txt returns 404. The repository has SECURITY.md with GitHub private vulnerability reporting.",
          "CHANGELOG.md in the repository since 15 October 2026, with an Unreleased section only.",
          "RDAP gives guilds.run a registration date of 2026-09-19.",
          "The GitHub organisation CigaleAI was created on 2025-02-17 and is not verified."
        ],
        "score": 56
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/guilds-run.json",
      "live": {
        "slug": "guilds-run",
        "githubStars": 67,
        "securityTxt": {
          "url": "https://guilds.run/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T15:59:37.244745625Z"
        },
        "domain": {
          "domain": "guilds.run",
          "registered": "2026-09-19",
          "source": "https://rdap.identitydigital.services/rdap/domain/guilds.run",
          "checkedAt": "2026-11-01T14:12:07.621535185Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/CigaleAI/guilds/main/CHANGELOG.md",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-11-07T14:18:06.648722196Z",
            "changedAt": "2026-11-06T13:39:41.628947519Z",
            "fingerprint": "f9038c621e32"
          },
          {
            "url": "https://www.guilds.run/pricing",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-11-07T14:29:26.228895188Z",
            "changedAt": "2026-10-15T22:10:00.990326283Z",
            "fingerprint": "e3efa801ad24"
          }
        ],
        "github": {
          "repo": "cigaleai/guilds",
          "checkedAt": "2026-11-02T08:38:38.17968009Z",
          "stars": 67,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-11-01T17:47:15Z",
          "openIssues": 0,
          "openPRs": 0,
          "issuesOpened90d": 5,
          "issuesClosed90d": 5,
          "prsMerged90d": 17,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 49,
            "failure": 1,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-11-01T17:52:53Z"
          },
          "replies": {
            "sampled": 5,
            "unanswered": 0,
            "medianDays": 0
          }
        },
        "updatedAt": "2026-11-07T15:59:37.244745625Z"
      }
    },
    "answer": "LlamaIndex Framework scores 70 (BB) on agent readiness against guilds.run's 53.4 (D), and leads in 6 of 7 scored categories.",
    "b": {
      "slug": "llamaindex",
      "name": "LlamaIndex Framework",
      "vendor": "LlamaIndex",
      "vendorUrl": "https://developers.llamaindex.ai/python/framework/",
      "kind": "framework",
      "category": "frameworks",
      "summary": "The LlamaIndex Framework is LlamaIndex's open-source Python toolkit for retrieval and agents, with FunctionAgent, ReActAgent and CodeActAgent, multi-agent AgentWorkflow, event-driven Workflows, MCP tools and hundreds of integration packages.",
      "url": "https://www.anchorterminal.com/tools/llamaindex",
      "markdownUrl": "https://www.anchorterminal.com/tools/llamaindex.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/llamaindex.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/llamaindex.json",
      "dns": "llamaindex.grade.anchorterminal.com",
      "repo": "https://github.com/run-llama/llama_index",
      "license": "MIT",
      "transports": [],
      "packages": [
        {
          "registry": "pypi",
          "name": "llama-index"
        },
        {
          "registry": "pypi",
          "name": "llama-index-core"
        },
        {
          "registry": "pypi",
          "name": "llama-index-workflows"
        },
        {
          "registry": "pypi",
          "name": "llama-index-tools-mcp"
        }
      ],
      "auth": "none",
      "authNotes": "A library with no credentials of its own. The default LLM and embeddings are OpenAI's and read an OpenAI key; integrations take their own keys.",
      "pricing": "free",
      "pricingNotes": "Free and open source under MIT. You pay for model calls. LlamaParse and LlamaCloud are separate paid services with their own Anchor Terminal listing.",
      "priceSummary": "Free · OSS",
      "where": "library",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the framework docs or the repository (checked 2026-11-06).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 52833,
        "npmWeekly": null,
        "pypiWeekly": 1260039,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://developers.llamaindex.ai/python/framework/",
      "llmsTxt": "https://developers.llamaindex.ai/llms.txt",
      "capabilities": [
        "agent.framework",
        "agent.multi-agent",
        "agent.durable",
        "agent.mcp-client"
      ],
      "tags": [
        "framework",
        "python",
        "open-source",
        "llms-txt",
        "mcp",
        "rag",
        "workflows"
      ],
      "lastRelease": "2026-09-21",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 70,
        "grade": "BB",
        "agentReady": true,
        "rank": 216,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 11,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 73,
          "maintenance": 69,
          "payments": 60,
          "reliability": 70,
          "schema": 85,
          "security": 74,
          "transparency": 67
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": -2,
        "negativeNotes": [
          "2025-11 to 2026-11. Advisories for llama-index-core first published in the last 12 months are GHSA-488g-hw5f-x29p (uncontrolled resource consumption, 2 February 2026, moderate, fixed in 0.12.41) and the PYSEC re-publications in 2026 of 2025 path-traversal, denial-of-service and temporary-file issues fixed by 0.13.0. Fixed and documented, so 2 points. https://osv.dev/vulnerability/GHSA-488g-hw5f-x29p"
        ],
        "verdict": "An MIT Python framework for retrieval and agents, with three agent types, multi-agent AgentWorkflow, resumable event-driven Workflows, MCP tools and a huntr bug bounty, and no telemetry found. Core is still 0.14 with breaking minors, OpenAI is the silent default, and approval and injection handling are left to the application.",
        "bestFor": "Python teams building retrieval-heavy agents over their own data, with many connectors.",
        "strengths": [
          "FunctionAgent, ReActAgent, CodeActAgent and multi-agent AgentWorkflow over one Workflows engine",
          "Workflow context serialises and resumes, with a DBOS package for durable runs",
          "Hundreds of integration packages for models, vector stores and data loaders",
          "No telemetry found in llama-index-core",
          "huntr bug bounty and public advisories with fixed versions"
        ],
        "weaknesses": [
          "Core is 0.14.x, and minor versions such as 0.13 and 0.14 carried breaking changes",
          "OpenAI is the default LLM and embedding provider unless Settings is changed",
          "No per-tool approval primitive; the threat model leaves input validation to the application",
          "Several 2025 path-traversal and denial-of-service advisories in core and readers"
        ],
        "agentNotes": [
          "Set Settings.llm and Settings.embed_model explicitly so calls don't go to OpenAI by default",
          "Install llama-index-tools-mcp for MCP tools and pass only the allowed tools the task needs",
          "Use Workflow human-in-the-loop events before tools that write or send",
          "Pin llama-index-core to a minor version, since minors have broken APIs",
          "Upgrade llama-index-core to 0.13.0 or later to clear the 2025 advisories"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 70
          }
        ],
        "editorialScores": {
          "ergonomics": 73,
          "maintenance": 69,
          "payments": 60,
          "reliability": 70,
          "schema": 85,
          "security": 74,
          "transparency": 72
        },
        "provenanceScore": 61,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install llama-index   # MCP tools: pip install llama-index-tools-mcp"
      },
      "letme": {
        "capability": "https://letme.dev/agent.framework",
        "tool": "https://letme.dev/llamaindex"
      },
      "sameCompany": [
        "llamaparse"
      ],
      "area": "frameworks",
      "provenance": {
        "legalEntity": "LlamaIndex, Inc.",
        "domain": "llamaindex.ai",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "https://www.llamaindex.ai/privacy-policy",
        "statusPage": "",
        "changelog": "https://github.com/run-llama/llama_index/blob/main/CHANGELOG.md",
        "securityTxt": "unknown",
        "checked": "2026-11-06",
        "notes": [
          "The framework is MIT-licensed; the company facts follow the LlamaParse listing.",
          "developers.llamaindex.ai/robots.txt allows all crawlers.",
          "The privacy policy link is the company's; the library collects nothing itself. Neither the terms nor the privacy policy was re-read for this listing."
        ],
        "score": 61
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/llamaindex.json",
      "live": {
        "slug": "llamaindex",
        "versions": [
          {
            "registry": "github",
            "name": "run-llama/llama_index",
            "version": "v0.14.25",
            "released": "2026-09-21",
            "seenAt": "2026-11-06T23:41:01.613169751Z"
          },
          {
            "registry": "pypi",
            "name": "llama-index",
            "version": "0.14.25",
            "released": "2026-09-21",
            "seenAt": "2026-11-06T23:40:55.516520624Z"
          },
          {
            "registry": "pypi",
            "name": "llama-index-core",
            "version": "0.14.25",
            "released": "2026-09-21",
            "seenAt": "2026-11-06T23:40:55.720658841Z"
          },
          {
            "registry": "pypi",
            "name": "llama-index-tools-mcp",
            "version": "0.6.0",
            "released": "2026-08-31",
            "seenAt": "2026-11-06T23:41:00.102033357Z"
          },
          {
            "registry": "pypi",
            "name": "llama-index-workflows",
            "version": "2.26.1",
            "released": "2026-10-21",
            "seenAt": "2026-11-06T23:40:57.534551463Z"
          }
        ],
        "githubStars": 52835,
        "pypiWeekly": 409969,
        "securityTxt": {
          "url": "https://llamaindex.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:01:24.67649536Z"
        },
        "llmsTxt": {
          "url": "https://developers.llamaindex.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:53.290758373Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/run-llama/llama_index/main/CHANGELOG.md",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:23:19.050779794Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "51de27bb70e4"
          },
          {
            "url": "https://www.llamaindex.ai/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:30:58.312656283Z",
            "changedAt": "2026-11-06T13:51:36.031111139Z",
            "fingerprint": "22f247245013"
          }
        ],
        "updatedAt": "2026-11-07T16:01:24.67649536Z"
      }
    },
    "edges": [
      {
        "by": 48,
        "category": "maintenance",
        "leads": "llamaindex",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "No tagged release, version or dated changelog entry. Main, which the install clones and SECURITY.md names as the supported version, last changed on 3 November 2026 (1,072 of the commits since 14 October by one author), but commits with no version or tag aren't releases in this run (hyperqwen, brave-search-mcp), and CONTRIBUTING.md itself defines a release as a vMAJOR.MINOR.PATCH tag, so nothing has been released (0, from 20). No releases or dated changelog entries in the 90 days from 6 August (0). Issues and pull requests per the 14 October check (eight, all closed, the three issues within an hour), not re-read on 4 November (15 of 25). No published package (0). CI on every push with a frozen pnpm lockfile, and still no Dependabot configuration in the repository (6 of 10). 0 + 0 + 15 + 0 + 6 = 21.",
          "b": "llama-index-core 0.14.25 on 21 September 2026, 46 days before this check (20). Two core changelog entries in the 90 days (19 August and 21 September), with integration packages and Workflows (2.24.1 to 2.26.1) publishing in between, so partial (12). 379 open issues and 1,291 open issues and pull requests on 6 November, with 241 issues opened in the 90 days to 3 November. Of the 50 newest, 28 had a comment and 3 were closed; a stale bot and an issue classifier run on the repository (12). Core, Workflows and integrations are current (15). CI and CodeQL passing on main and a stale-package policy that moves unmaintained integrations out of main (10). 20+12+12+15+10 = 69."
        },
        "scores": {
          "a": 21,
          "b": 69
        }
      },
      {
        "by": 27,
        "category": "reliability",
        "leads": "llamaindex",
        "name": "Reliability",
        "reasons": {
          "a": "Read with the local-software lines, because the owner runs it. Docker with Compose is the stated requirement, and the install is a git clone of main plus ./setup.sh, which builds the images. No package, tagged release or published image exists, since the image workflow runs only on a v* tag and the remote still has none on 4 November 2026 (10 of 20, the earlier partial kept). The verify workflow runs scripts/check.sh on every push, with typecheck, lint, orchestrator, UI and web tests and a smoke test of the Compose stack, and the clone has 356 test files. GitHub's Actions pages and API answered 403 on 4 November, so the pass state on main is unread (15 of 25, down from 25 on the 14 October reading of 13 passing runs). Open issues per the 14 October check, not re-read on 4 November (18 of 25). CHANGELOG.md, added on 15 October, marks each change no impact, rebuild or breaking and CONTRIBUTING.md defines a semver tag policy, but no version has been cut (0, the earlier value kept). Not versioned or declared stable (0). 10 + 15 + 18 + 0 + 0 = 43.",
          "b": "Local-package reading. Official PyPI packages with Python 3.10 to below 4.0 (20). Public unit-test, type-check, lint, coverage and CodeQL workflows, with the type-check, lint and CodeQL runs on main passing on 3 November (25). 379 open issues and 1,291 open issues and pull requests on 6 November, with 241 issues opened in the 90 days to 3 November. Of the 50 newest, 28 had a comment and 3 were closed; a stale bot and an issue classifier run on the repository (12). A dated, generated changelog per package, but core is 0.x and minors such as 0.13 and 0.14 carried breaking changes (8). Core isn't 1.0; Workflows is at 2.x, so partial (5). 20+25+12+8+5 = 70."
        },
        "scores": {
          "a": 43,
          "b": 70
        }
      },
      {
        "by": 27,
        "category": "schema",
        "leads": "llamaindex",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "Framework reading. No OpenAPI document for the HTTP API. The recipe format guilds.recipe v2 rejects unknown keys, and connector manifests are validated with TypeBox at load (12 of 25). No llms.txt on docs.guilds.run (404 on 4 November). The docs are Markdown in the repository with an AGENTS.md (5 of 10). Pages state what the code does today, which page to read for which job, and the trust boundary in numbered rules (15 of 20). Tool input schemas, recipe caps and typed manifest fields (11 of 15). The getting-started walk says what you should see at each step, and the Operate page explains each startup error message (11 of 15). CHANGELOG.md (since 15 October) holds only an Unreleased section with no version or date, and the security register keeps dated history (4 of 15, the earlier partial kept). 12 + 5 + 15 + 11 + 11 + 4 = 58.",
          "b": "Framework reading. A typed Python API with a generated reference (22). llms.txt indexing the framework docs, plus a docs search API and an MCP server for the docs (10). The agents guide says what each agent class is for, and the MCP page lists the three ways to use MCP (15). Tools are typed from function signatures and Pydantic models (13). Many examples and notebooks, few documented error types (10). Dated changelog (15). 22+10+15+13+10+15 = 85."
        },
        "scores": {
          "a": 58,
          "b": 85
        }
      },
      {
        "by": 7,
        "category": "transparency",
        "leads": "llamaindex",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "AGPL-3.0-only, OSI approved (30). No privacy policy or terms. The footer still links to both and they returned 404 on 4 November 2026. The docs say where data lives (PostgreSQL and STATE_ROOT on your host), that model keys go only to their provider, and that stored credentials are encrypted under one master key in .env (12 of 30). No deprecation policy or dated notices. CHANGELOG.md marks breaking changes with steps, undated, and the security register is dated (3 of 20, the earlier partial kept). Sentry is opt-in and documented on the Configure page, and the models.dev catalogue fetch and the connector registry address are documented with their switches (18 of 20). 30 + 12 + 3 + 18 = 63.",
          "b": "MIT (30). The library stores nothing itself; OpenAI is the default provider unless changed, which the docs show (20). A stale-package policy and removals noted in the changelog, such as deprecated IPEX integrations removed in 0.14.25, without dated notice (10). No telemetry, though no page states it (12). 30+20+10+12 = 72."
        },
        "scores": {
          "a": 60,
          "b": 67
        }
      },
      {
        "by": 6,
        "category": "ergonomics",
        "leads": "llamaindex",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Framework reading, scored on what it takes to run a tool-calling team with MCP. No code is needed. Three commands and a model key start a guild, and each agent is offered only the tools turned on for it (18 of 25). max_tool_calls defaults to 50 per run, max_input_tokens trims old tool results and hands off to a new run, and remaining_tool_calls is appended to each result after the platform cap (15 of 20). Runs end with named codes such as generation.max_tool_calls and workspace.full, and interrupted tool calls get an error result so the next model request is valid (13 of 20). readOnlyHint and destructiveHint are stored for each MCP tool and writing tools start Off. Startup does not replay a model call (14 of 20). Sensible defaults and a guided first-run dialog, but it is an application with an HTTP API and no SDK in any language (7 of 15). Confirmed on 4 November in the clone (max_tool_calls default 50, 200 for a new coding agent).",
          "b": "Framework reading. MCP tools through a separate llama-index-tools-mcp package, with allowed tools selectable (18). Memory token limits, iteration caps and streaming events (16). Tool errors returned to the agent, with few typed errors (12). Workflow context serialises and resumes, and the DBOS package makes runs durable (16). Few required parameters, but OpenAI is the silent default for LLM and embeddings, Python here with a separate TypeScript edition (11). 18+16+12+16+11 = 73."
        },
        "scores": {
          "a": 67,
          "b": 73
        }
      },
      {
        "by": 6,
        "category": "security",
        "leads": "llamaindex",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Framework reading. 30 for what leaves the machine by default, 20 for approvals and sandboxing, 15 for prompt injection, 15 for audit and 20 for the security programme. Model keys go only to their provider and Sentry starts only when SENTRY_DSN is set, with user info, bodies and model inputs and outputs excluded. Graft left the runtime image on 13 October (SEC-9), so its version lookup is gone, but the box fetches the models.dev catalogue on first read and hourly (switch MODELS_DEV_URL, documented) and the OAuth pages load Google Fonts (27). Each machine is an OpenSandbox container with dropped capabilities and no_new_privileges, writing MCP tools start Off and Studio changes wait for the operator. Agents on one machine share it and run commands as root with open egress (SEC-6, SEC-24), no per-call approval gate for tool calls was found, and the default AUTH_MODE compat-cookie has no login (10). The coding prompt says repository content is data, Studio wraps evidence as untrusted, and known secret values are redacted from transcripts. SEC-8, injection into coding agents, and SEC-47, GitHub content steering writes, are open (8). Every run keeps the prompt, each tool call and result, and versioned memory with who changed it (14). SECURITY.md with GitHub private reporting and no acknowledgement time, and a public register of 58 issues on 4 November with exposure and residual risk, 28 still open (18 open, 10 open and accepted). No security.txt (404), bounty or published advisory (9). 27 + 10 + 8 + 14 + 9 = 68. Sixteen register fixes dated 17 October to 3 November are on main with no release and no advisory; no term, because `packages` is empty and there is no hosted product, as ayrshare's plugin fix was read.",
          "b": "Framework reading (telemetry defaults, approvals, guardrails, sandboxing). No telemetry found in llama-index-core (25). Human-in-the-loop events in Workflows and agents can wait for a person, but there's no per-tool approval primitive and CodeActAgent's executor is the developer's to supply (12). The threat model puts input validation on the application, with no prompt-injection guidance in the agent pages (5). Instrumentation events and callback handlers for tracing (14). A huntr bug bounty, GitHub private reporting and public advisories with fixed versions (18). 25+12+5+14+18 = 74."
        },
        "scores": {
          "a": 68,
          "b": 74
        }
      }
    ],
    "facts": [
      {
        "a": "Agent framework",
        "b": "Agent framework",
        "name": "Kind"
      },
      {
        "a": "Cigale AI",
        "b": "LlamaIndex",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "AGPL-3.0-only",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "none",
        "b": "2026-09-21",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "2026-08-24",
        "name": "Privacy policy last updated"
      },
      {
        "a": "57 stars",
        "b": "53k stars, 1.3M PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "LlamaIndex Framework scores 70 (BB) on agent readiness against guilds.run's 53.4 (D), and leads in 6 of 7 scored categories.",
        "question": "Which is better for AI agents, guilds.run or LlamaIndex Framework?"
      },
      {
        "answer": "Yes. guilds.run is open source (AGPL-3.0-only). LlamaIndex Framework is open source (MIT).",
        "question": "Are guilds.run and LlamaIndex Framework open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": null,
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "A person or small team that wants a standing, inspectable team of agents with schedules, shared tables and a web app, run on one machine, and is comfortable tracking main.",
        "slug": "guilds-run",
        "watchFor": "No tagged release, version number or published image on 4 November 2026. Users install whatever is on main, including breaking changes"
      },
      {
        "aheadOn": [
          "Reliability, 70 against 43",
          "Schema \u0026 documentation, 85 against 58",
          "Agent ergonomics, 73 against 67",
          "Security \u0026 auth, 74 against 68",
          "Maintenance \u0026 community, 69 against 21",
          "Transparency \u0026 trust, 67 against 60"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "No key needed to call it"
        ],
        "goodFor": "Python teams building retrieval-heavy agents over their own data, with many connectors.",
        "slug": "llamaindex",
        "watchFor": "Core is 0.14.x, and minor versions such as 0.13 and 0.14 carried breaking changes"
      }
    ],
    "history": {
      "guilds-run": [
        {
          "causes": [
            "product",
            "evidence",
            "correction"
          ],
          "date": "2026-11-04",
          "delta": -3.2,
          "from": 56.6,
          "fromGrade": "C",
          "to": 53.4,
          "toGrade": "D"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 56.5,
          "fromGrade": "C",
          "to": 56.6,
          "toGrade": "C"
        }
      ],
      "llamaindex": null
    },
    "job": {
      "capability": "agent.framework",
      "name": "Agent frameworks"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-guilds-run.json",
        "title": "AgentOS vs guilds.run",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-guilds-run"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentos-vs-llamaindex.json",
        "title": "AgentOS vs LlamaIndex Framework",
        "url": "https://www.anchorterminal.com/compare/agentos-vs-llamaindex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agno-vs-guilds-run.json",
        "title": "Agno vs guilds.run",
        "url": "https://www.anchorterminal.com/compare/agno-vs-guilds-run"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agno-vs-llamaindex.json",
        "title": "Agno vs LlamaIndex Framework",
        "url": "https://www.anchorterminal.com/compare/agno-vs-llamaindex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boxlang-ai-vs-guilds-run.json",
        "title": "BoxLang AI vs guilds.run",
        "url": "https://www.anchorterminal.com/compare/boxlang-ai-vs-guilds-run"
      },
      {
        "json": "https://www.anchorterminal.com/compare/boxlang-ai-vs-llamaindex.json",
        "title": "BoxLang AI vs LlamaIndex Framework",
        "url": "https://www.anchorterminal.com/compare/boxlang-ai-vs-llamaindex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-agent-sdk-vs-guilds-run.json",
        "title": "Claude Agent SDK vs guilds.run",
        "url": "https://www.anchorterminal.com/compare/claude-agent-sdk-vs-guilds-run"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-agent-sdk-vs-llamaindex.json",
        "title": "Claude Agent SDK vs LlamaIndex Framework",
        "url": "https://www.anchorterminal.com/compare/claude-agent-sdk-vs-llamaindex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crewai-vs-guilds-run.json",
        "title": "CrewAI vs guilds.run",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-guilds-run"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crewai-vs-llamaindex.json",
        "title": "CrewAI vs LlamaIndex Framework",
        "url": "https://www.anchorterminal.com/compare/crewai-vs-llamaindex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-guilds-run.json",
        "title": "Cursor Agent SDK vs guilds.run",
        "url": "https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-guilds-run"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-llamaindex.json",
        "title": "Cursor Agent SDK vs LlamaIndex Framework",
        "url": "https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-llamaindex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-agent-vs-guilds-run.json",
        "title": "Docker Agent vs guilds.run",
        "url": "https://www.anchorterminal.com/compare/docker-agent-vs-guilds-run"
      },
      {
        "json": "https://www.anchorterminal.com/compare/docker-agent-vs-llamaindex.json",
        "title": "Docker Agent vs LlamaIndex Framework",
        "url": "https://www.anchorterminal.com/compare/docker-agent-vs-llamaindex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-guilds-run.json",
        "title": "Agent Development Kit (ADK) vs guilds.run",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-guilds-run"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-adk-vs-llamaindex.json",
        "title": "Agent Development Kit (ADK) vs LlamaIndex Framework",
        "url": "https://www.anchorterminal.com/compare/google-adk-vs-llamaindex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/guilds-run-vs-langgraph.json",
        "title": "guilds.run vs LangGraph",
        "url": "https://www.anchorterminal.com/compare/guilds-run-vs-langgraph"
      },
      {
        "json": "https://www.anchorterminal.com/compare/guilds-run-vs-mastra.json",
        "title": "guilds.run vs Mastra",
        "url": "https://www.anchorterminal.com/compare/guilds-run-vs-mastra"
      },
      {
        "json": "https://www.anchorterminal.com/compare/guilds-run-vs-microsoft-agent-framework.json",
        "title": "guilds.run vs Microsoft Agent Framework",
        "url": "https://www.anchorterminal.com/compare/guilds-run-vs-microsoft-agent-framework"
      },
      {
        "json": "https://www.anchorterminal.com/compare/guilds-run-vs-openai-agents-sdk.json",
        "title": "guilds.run vs OpenAI Agents SDK",
        "url": "https://www.anchorterminal.com/compare/guilds-run-vs-openai-agents-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/guilds-run-vs-pydantic-ai.json",
        "title": "guilds.run vs Pydantic AI",
        "url": "https://www.anchorterminal.com/compare/guilds-run-vs-pydantic-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/guilds-run-vs-smolagents.json",
        "title": "guilds.run vs smolagents",
        "url": "https://www.anchorterminal.com/compare/guilds-run-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/guilds-run-vs-strands-agents.json",
        "title": "guilds.run vs Strands Agents",
        "url": "https://www.anchorterminal.com/compare/guilds-run-vs-strands-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/guilds-run-vs-tradingagents.json",
        "title": "guilds.run vs TradingAgents",
        "url": "https://www.anchorterminal.com/compare/guilds-run-vs-tradingagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/guilds-run-vs-vercel-ai-sdk.json",
        "title": "guilds.run vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/guilds-run-vs-vercel-ai-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/langgraph-vs-llamaindex.json",
        "title": "LangGraph vs LlamaIndex Framework",
        "url": "https://www.anchorterminal.com/compare/langgraph-vs-llamaindex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llamaindex-vs-mastra.json",
        "title": "LlamaIndex Framework vs Mastra",
        "url": "https://www.anchorterminal.com/compare/llamaindex-vs-mastra"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llamaindex-vs-microsoft-agent-framework.json",
        "title": "LlamaIndex Framework vs Microsoft Agent Framework",
        "url": "https://www.anchorterminal.com/compare/llamaindex-vs-microsoft-agent-framework"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llamaindex-vs-openai-agents-sdk.json",
        "title": "LlamaIndex Framework vs OpenAI Agents SDK",
        "url": "https://www.anchorterminal.com/compare/llamaindex-vs-openai-agents-sdk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llamaindex-vs-pydantic-ai.json",
        "title": "LlamaIndex Framework vs Pydantic AI",
        "url": "https://www.anchorterminal.com/compare/llamaindex-vs-pydantic-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llamaindex-vs-smolagents.json",
        "title": "LlamaIndex Framework vs smolagents",
        "url": "https://www.anchorterminal.com/compare/llamaindex-vs-smolagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llamaindex-vs-strands-agents.json",
        "title": "LlamaIndex Framework vs Strands Agents",
        "url": "https://www.anchorterminal.com/compare/llamaindex-vs-strands-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llamaindex-vs-tradingagents.json",
        "title": "LlamaIndex Framework vs TradingAgents",
        "url": "https://www.anchorterminal.com/compare/llamaindex-vs-tradingagents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/llamaindex-vs-vercel-ai-sdk.json",
        "title": "LlamaIndex Framework vs AI SDK",
        "url": "https://www.anchorterminal.com/compare/llamaindex-vs-vercel-ai-sdk"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 27,
        "edge": "llamaindex",
        "guilds-run": 43,
        "key": "reliability",
        "llamaindex": 70,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 27,
        "edge": "llamaindex",
        "guilds-run": 58,
        "key": "schema",
        "llamaindex": 85,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 6,
        "edge": "llamaindex",
        "guilds-run": 67,
        "key": "ergonomics",
        "llamaindex": 73,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 6,
        "edge": "llamaindex",
        "guilds-run": 68,
        "key": "security",
        "llamaindex": 74,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 0,
        "edge": "",
        "guilds-run": 60,
        "key": "payments",
        "llamaindex": 60,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 48,
        "edge": "llamaindex",
        "guilds-run": 21,
        "key": "maintenance",
        "llamaindex": 69,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 7,
        "edge": "llamaindex",
        "guilds-run": 60,
        "key": "transparency",
        "llamaindex": 67,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "LlamaIndex Framework scores 70 (BB) on agent readiness against guilds.run's 53.4 (D), and leads in 6 of 7 scored categories. Both do agent frameworks.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "guilds-run": "A self-hosted multi-agent system that records each run's prompt, tool calls and memory changes, with per-agent models and tools and no telemetry by default. It has no tagged release, version or package, so users track main, its own security register lists 28 open issues of 58, and the site's terms and privacy links return 404.",
      "llamaindex": "An MIT Python framework for retrieval and agents, with three agent types, multi-agent AgentWorkflow, resumable event-driven Workflows, MCP tools and a huntr bug bounty, and no telemetry found. Core is still 0.14 with breaking minors, OpenAI is the silent default, and approval and injection handling are left to the application."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/guilds-run-vs-llamaindex",
    "json": "https://www.anchorterminal.com/compare/guilds-run-vs-llamaindex.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/guilds-run-vs-llamaindex.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/guilds-run-vs-llamaindex.min.md"
  },
  "markdown": "LlamaIndex Framework scores 70 (BB) on agent readiness against guilds.run's 53.4 (D), and leads in 6 of 7 scored categories. Both do agent frameworks.\n\n- guilds.run: grade D, 53.4/100, rank #945 of 1486. Markdown https://www.anchorterminal.com/tools/guilds-run.md · JSON https://www.anchorterminal.com/api/v1/tools/guilds-run.json\n- LlamaIndex Framework: grade BB, 70/100, rank #216 of 1486. Markdown https://www.anchorterminal.com/tools/llamaindex.md · JSON https://www.anchorterminal.com/api/v1/tools/llamaindex.json\n- Best agent frameworks and SDKs: https://www.anchorterminal.com/best/frameworks/index.md\n- All 171 frameworks comparisons: https://www.anchorterminal.com/compare/frameworks/index.md\n\n## Which one, for what\n\n### guilds.run (D)\n\nGood for: A person or small team that wants a standing, inspectable team of agents with schedules, shared tables and a web app, run on one machine, and is comfortable tracking main.\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: No tagged release, version number or published image on 4 November 2026. Users install whatever is on main, including breaking changes\n\n### LlamaIndex Framework (BB)\n\nGood for: Python teams building retrieval-heavy agents over their own data, with many connectors.\n\nAhead on:\n- Reliability, 70 against 43\n- Schema \u0026 documentation, 85 against 58\n- Agent ergonomics, 73 against 67\n- Security \u0026 auth, 74 against 68\n- Maintenance \u0026 community, 69 against 21\n- Transparency \u0026 trust, 67 against 60\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- No key needed to call it\n\nWatch for: Core is 0.14.x, and minor versions such as 0.13 and 0.14 carried breaking changes\n\n\n## Why the edge\n\n### Maintenance \u0026 community: LlamaIndex Framework +48\n\n- guilds.run (21): No tagged release, version or dated changelog entry. Main, which the install clones and SECURITY.md names as the supported version, last changed on 3 November 2026 (1,072 of the commits since 14 October by one author), but commits with no version or tag aren't releases in this run (hyperqwen, brave-search-mcp), and CONTRIBUTING.md itself defines a release as a vMAJOR.MINOR.PATCH tag, so nothing has been released (0, from 20). No releases or dated changelog entries in the 90 days from 6 August (0). Issues and pull requests per the 14 October check (eight, all closed, the three issues within an hour), not re-read on 4 November (15 of 25). No published package (0). CI on every push with a frozen pnpm lockfile, and still no Dependabot configuration in the repository (6 of 10). 0 + 0 + 15 + 0 + 6 = 21.\n- LlamaIndex Framework (69): llama-index-core 0.14.25 on 21 September 2026, 46 days before this check (20). Two core changelog entries in the 90 days (19 August and 21 September), with integration packages and Workflows (2.24.1 to 2.26.1) publishing in between, so partial (12). 379 open issues and 1,291 open issues and pull requests on 6 November, with 241 issues opened in the 90 days to 3 November. Of the 50 newest, 28 had a comment and 3 were closed; a stale bot and an issue classifier run on the repository (12). Core, Workflows and integrations are current (15). CI and CodeQL passing on main and a stale-package policy that moves unmaintained integrations out of main (10). 20+12+12+15+10 = 69.\n\n### Reliability: LlamaIndex Framework +27\n\n- guilds.run (43): Read with the local-software lines, because the owner runs it. Docker with Compose is the stated requirement, and the install is a git clone of main plus ./setup.sh, which builds the images. No package, tagged release or published image exists, since the image workflow runs only on a v* tag and the remote still has none on 4 November 2026 (10 of 20, the earlier partial kept). The verify workflow runs scripts/check.sh on every push, with typecheck, lint, orchestrator, UI and web tests and a smoke test of the Compose stack, and the clone has 356 test files. GitHub's Actions pages and API answered 403 on 4 November, so the pass state on main is unread (15 of 25, down from 25 on the 14 October reading of 13 passing runs). Open issues per the 14 October check, not re-read on 4 November (18 of 25). CHANGELOG.md, added on 15 October, marks each change no impact, rebuild or breaking and CONTRIBUTING.md defines a semver tag policy, but no version has been cut (0, the earlier value kept). Not versioned or declared stable (0). 10 + 15 + 18 + 0 + 0 = 43.\n- LlamaIndex Framework (70): Local-package reading. Official PyPI packages with Python 3.10 to below 4.0 (20). Public unit-test, type-check, lint, coverage and CodeQL workflows, with the type-check, lint and CodeQL runs on main passing on 3 November (25). 379 open issues and 1,291 open issues and pull requests on 6 November, with 241 issues opened in the 90 days to 3 November. Of the 50 newest, 28 had a comment and 3 were closed; a stale bot and an issue classifier run on the repository (12). A dated, generated changelog per package, but core is 0.x and minors such as 0.13 and 0.14 carried breaking changes (8). Core isn't 1.0; Workflows is at 2.x, so partial (5). 20+25+12+8+5 = 70.\n\n### Schema \u0026 documentation: LlamaIndex Framework +27\n\n- guilds.run (58): Framework reading. No OpenAPI document for the HTTP API. The recipe format guilds.recipe v2 rejects unknown keys, and connector manifests are validated with TypeBox at load (12 of 25). No llms.txt on docs.guilds.run (404 on 4 November). The docs are Markdown in the repository with an AGENTS.md (5 of 10). Pages state what the code does today, which page to read for which job, and the trust boundary in numbered rules (15 of 20). Tool input schemas, recipe caps and typed manifest fields (11 of 15). The getting-started walk says what you should see at each step, and the Operate page explains each startup error message (11 of 15). CHANGELOG.md (since 15 October) holds only an Unreleased section with no version or date, and the security register keeps dated history (4 of 15, the earlier partial kept). 12 + 5 + 15 + 11 + 11 + 4 = 58.\n- LlamaIndex Framework (85): Framework reading. A typed Python API with a generated reference (22). llms.txt indexing the framework docs, plus a docs search API and an MCP server for the docs (10). The agents guide says what each agent class is for, and the MCP page lists the three ways to use MCP (15). Tools are typed from function signatures and Pydantic models (13). Many examples and notebooks, few documented error types (10). Dated changelog (15). 22+10+15+13+10+15 = 85.\n\n### Transparency \u0026 trust: LlamaIndex Framework +7\n\n- guilds.run (60): AGPL-3.0-only, OSI approved (30). No privacy policy or terms. The footer still links to both and they returned 404 on 4 November 2026. The docs say where data lives (PostgreSQL and STATE_ROOT on your host), that model keys go only to their provider, and that stored credentials are encrypted under one master key in .env (12 of 30). No deprecation policy or dated notices. CHANGELOG.md marks breaking changes with steps, undated, and the security register is dated (3 of 20, the earlier partial kept). Sentry is opt-in and documented on the Configure page, and the models.dev catalogue fetch and the connector registry address are documented with their switches (18 of 20). 30 + 12 + 3 + 18 = 63.\n- LlamaIndex Framework (67): MIT (30). The library stores nothing itself; OpenAI is the default provider unless changed, which the docs show (20). A stale-package policy and removals noted in the changelog, such as deprecated IPEX integrations removed in 0.14.25, without dated notice (10). No telemetry, though no page states it (12). 30+20+10+12 = 72.\n\n### Agent ergonomics: LlamaIndex Framework +6\n\n- guilds.run (67): Framework reading, scored on what it takes to run a tool-calling team with MCP. No code is needed. Three commands and a model key start a guild, and each agent is offered only the tools turned on for it (18 of 25). max_tool_calls defaults to 50 per run, max_input_tokens trims old tool results and hands off to a new run, and remaining_tool_calls is appended to each result after the platform cap (15 of 20). Runs end with named codes such as generation.max_tool_calls and workspace.full, and interrupted tool calls get an error result so the next model request is valid (13 of 20). readOnlyHint and destructiveHint are stored for each MCP tool and writing tools start Off. Startup does not replay a model call (14 of 20). Sensible defaults and a guided first-run dialog, but it is an application with an HTTP API and no SDK in any language (7 of 15). Confirmed on 4 November in the clone (max_tool_calls default 50, 200 for a new coding agent).\n- LlamaIndex Framework (73): Framework reading. MCP tools through a separate llama-index-tools-mcp package, with allowed tools selectable (18). Memory token limits, iteration caps and streaming events (16). Tool errors returned to the agent, with few typed errors (12). Workflow context serialises and resumes, and the DBOS package makes runs durable (16). Few required parameters, but OpenAI is the silent default for LLM and embeddings, Python here with a separate TypeScript edition (11). 18+16+12+16+11 = 73.\n\n### Security \u0026 auth: LlamaIndex Framework +6\n\n- guilds.run (68): Framework reading. 30 for what leaves the machine by default, 20 for approvals and sandboxing, 15 for prompt injection, 15 for audit and 20 for the security programme. Model keys go only to their provider and Sentry starts only when SENTRY_DSN is set, with user info, bodies and model inputs and outputs excluded. Graft left the runtime image on 13 October (SEC-9), so its version lookup is gone, but the box fetches the models.dev catalogue on first read and hourly (switch MODELS_DEV_URL, documented) and the OAuth pages load Google Fonts (27). Each machine is an OpenSandbox container with dropped capabilities and no_new_privileges, writing MCP tools start Off and Studio changes wait for the operator. Agents on one machine share it and run commands as root with open egress (SEC-6, SEC-24), no per-call approval gate for tool calls was found, and the default AUTH_MODE compat-cookie has no login (10). The coding prompt says repository content is data, Studio wraps evidence as untrusted, and known secret values are redacted from transcripts. SEC-8, injection into coding agents, and SEC-47, GitHub content steering writes, are open (8). Every run keeps the prompt, each tool call and result, and versioned memory with who changed it (14). SECURITY.md with GitHub private reporting and no acknowledgement time, and a public register of 58 issues on 4 November with exposure and residual risk, 28 still open (18 open, 10 open and accepted). No security.txt (404), bounty or published advisory (9). 27 + 10 + 8 + 14 + 9 = 68. Sixteen register fixes dated 17 October to 3 November are on main with no release and no advisory; no term, because `packages` is empty and there is no hosted product, as ayrshare's plugin fix was read.\n- LlamaIndex Framework (74): Framework reading (telemetry defaults, approvals, guardrails, sandboxing). No telemetry found in llama-index-core (25). Human-in-the-loop events in Workflows and agents can wait for a person, but there's no per-tool approval primitive and CodeActAgent's executor is the developer's to supply (12). The threat model puts input validation on the application, with no prompt-injection guidance in the agent pages (5). Instrumentation events and callback handlers for tracing (14). A huntr bug bounty, GitHub private reporting and public advisories with fixed versions (18). 25+12+5+14+18 = 74.\n\n## Score by category\n\n| Category | Weight | guilds.run | LlamaIndex Framework | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 43 | 70 | LlamaIndex Framework +27 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 58 | 85 | LlamaIndex Framework +27 |\n| Agent ergonomics | 13% (16.2 this run) | 67 | 73 | LlamaIndex Framework +6 |\n| Security \u0026 auth | 14% (17.5 this run) | 68 | 74 | LlamaIndex Framework +6 |\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) | 21 | 69 | LlamaIndex Framework +48 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 60 | 67 | LlamaIndex Framework +7 |\n| Negative events | ≤15 | -2 | -2 | |\n| **Total** | | **53.4 · D** | **70 · BB** | |\n\n## Facts side by side\n\n| Fact | guilds.run | LlamaIndex Framework |\n| --- | --- | --- |\n| Kind | Agent framework | Agent framework |\n| Vendor | Cigale AI | LlamaIndex |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | API key | None |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | AGPL-3.0-only | MIT |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| Last release | none | 2026-09-21 |\n| Terms last updated | no document linked | no document linked |\n| Privacy policy last updated | no document linked | 2026-08-24 |\n| Popularity | 57 stars | 53k stars, 1.3M PyPI/wk |\n\n## How the scores have moved\n\n### guilds.run\n\n- -3.2 on 4 November 2026 (C to D): product, new evidence, correction\n- +0.1 on 27 October 2026: checklist\n\n### LlamaIndex Framework\n\nNo score change since it was listed.\n\n## Verdicts\n\n**guilds.run.** A self-hosted multi-agent system that records each run's prompt, tool calls and memory changes, with per-agent models and tools and no telemetry by default. It has no tagged release, version or package, so users track main, its own security register lists 28 open issues of 58, and the site's terms and privacy links return 404.\n\n**LlamaIndex Framework.** An MIT Python framework for retrieval and agents, with three agent types, multi-agent AgentWorkflow, resumable event-driven Workflows, MCP tools and a huntr bug bounty, and no telemetry found. Core is still 0.14 with breaking minors, OpenAI is the silent default, and approval and injection handling are left to the application.\n\n## Before you call either\n\n### guilds.run\n\n1. Keep the box on loopback or behind an authenticating proxy with AUTH_MODE=trusted-header. The default mode does not authenticate\n2. Put agents that hold different secrets or GitHub tokens on different machines. Agents on one machine can read each other's homes and tokens\n3. Back up the .env file written by ./setup.sh. It holds the only copy of the key that encrypts stored credentials\n4. Pin a commit of main when you deploy and read CHANGELOG.md's Unreleased section before pulling. Breaking changes land on main\n5. Set MODELS_DEV_URL empty for an offline box. The model catalogue is otherwise fetched from models.dev hourly\n\n### LlamaIndex Framework\n\n1. Set Settings.llm and Settings.embed_model explicitly so calls don't go to OpenAI by default\n2. Install llama-index-tools-mcp for MCP tools and pass only the allowed tools the task needs\n3. Use Workflow human-in-the-loop events before tools that write or send\n4. Pin llama-index-core to a minor version, since minors have broken APIs\n5. Upgrade llama-index-core to 0.13.0 or later to clear the 2025 advisories\n\n## Questions\n\n### Which is better for AI agents, guilds.run or LlamaIndex Framework?\n\nLlamaIndex Framework scores 70 (BB) on agent readiness against guilds.run's 53.4 (D), and leads in 6 of 7 scored categories.\n\n### Are guilds.run and LlamaIndex Framework open source?\n\nYes. guilds.run is open source (AGPL-3.0-only). LlamaIndex Framework is open source (MIT).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/guilds-run-vs-llamaindex.json, and with the fewest tokens: https://www.anchorterminal.com/compare/guilds-run-vs-llamaindex.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"guilds-run\", \"b\": \"llamaindex\"}`. From a terminal: `anchor compare guilds-run llamaindex`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/guilds-run.json and https://www.anchorterminal.com/api/v1/tools/llamaindex.json\n\n## Other comparisons with guilds.run or LlamaIndex Framework\n\n- [AgentOS vs guilds.run](https://www.anchorterminal.com/compare/agentos-vs-guilds-run.md)\n- [AgentOS vs LlamaIndex Framework](https://www.anchorterminal.com/compare/agentos-vs-llamaindex.md)\n- [Agno vs guilds.run](https://www.anchorterminal.com/compare/agno-vs-guilds-run.md)\n- [Agno vs LlamaIndex Framework](https://www.anchorterminal.com/compare/agno-vs-llamaindex.md)\n- [BoxLang AI vs guilds.run](https://www.anchorterminal.com/compare/boxlang-ai-vs-guilds-run.md)\n- [BoxLang AI vs LlamaIndex Framework](https://www.anchorterminal.com/compare/boxlang-ai-vs-llamaindex.md)\n- [Claude Agent SDK vs guilds.run](https://www.anchorterminal.com/compare/claude-agent-sdk-vs-guilds-run.md)\n- [Claude Agent SDK vs LlamaIndex Framework](https://www.anchorterminal.com/compare/claude-agent-sdk-vs-llamaindex.md)\n- [CrewAI vs guilds.run](https://www.anchorterminal.com/compare/crewai-vs-guilds-run.md)\n- [CrewAI vs LlamaIndex Framework](https://www.anchorterminal.com/compare/crewai-vs-llamaindex.md)\n- [Cursor Agent SDK vs guilds.run](https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-guilds-run.md)\n- [Cursor Agent SDK vs LlamaIndex Framework](https://www.anchorterminal.com/compare/cursor-agent-sdk-vs-llamaindex.md)\n- [Docker Agent vs guilds.run](https://www.anchorterminal.com/compare/docker-agent-vs-guilds-run.md)\n- [Docker Agent vs LlamaIndex Framework](https://www.anchorterminal.com/compare/docker-agent-vs-llamaindex.md)\n- [Agent Development Kit (ADK) vs guilds.run](https://www.anchorterminal.com/compare/google-adk-vs-guilds-run.md)\n- [Agent Development Kit (ADK) vs LlamaIndex Framework](https://www.anchorterminal.com/compare/google-adk-vs-llamaindex.md)\n- [guilds.run vs LangGraph](https://www.anchorterminal.com/compare/guilds-run-vs-langgraph.md)\n- [guilds.run vs Mastra](https://www.anchorterminal.com/compare/guilds-run-vs-mastra.md)\n- [guilds.run vs Microsoft Agent Framework](https://www.anchorterminal.com/compare/guilds-run-vs-microsoft-agent-framework.md)\n- [guilds.run vs OpenAI Agents SDK](https://www.anchorterminal.com/compare/guilds-run-vs-openai-agents-sdk.md)\n- [guilds.run vs Pydantic AI](https://www.anchorterminal.com/compare/guilds-run-vs-pydantic-ai.md)\n- [guilds.run vs smolagents](https://www.anchorterminal.com/compare/guilds-run-vs-smolagents.md)\n- [guilds.run vs Strands Agents](https://www.anchorterminal.com/compare/guilds-run-vs-strands-agents.md)\n- [guilds.run vs TradingAgents](https://www.anchorterminal.com/compare/guilds-run-vs-tradingagents.md)\n- [guilds.run vs AI SDK](https://www.anchorterminal.com/compare/guilds-run-vs-vercel-ai-sdk.md)\n- [LangGraph vs LlamaIndex Framework](https://www.anchorterminal.com/compare/langgraph-vs-llamaindex.md)\n- [LlamaIndex Framework vs Mastra](https://www.anchorterminal.com/compare/llamaindex-vs-mastra.md)\n- [LlamaIndex Framework vs Microsoft Agent Framework](https://www.anchorterminal.com/compare/llamaindex-vs-microsoft-agent-framework.md)\n- [LlamaIndex Framework vs OpenAI Agents SDK](https://www.anchorterminal.com/compare/llamaindex-vs-openai-agents-sdk.md)\n- [LlamaIndex Framework vs Pydantic AI](https://www.anchorterminal.com/compare/llamaindex-vs-pydantic-ai.md)\n- [LlamaIndex Framework vs smolagents](https://www.anchorterminal.com/compare/llamaindex-vs-smolagents.md)\n- [LlamaIndex Framework vs Strands Agents](https://www.anchorterminal.com/compare/llamaindex-vs-strands-agents.md)\n- [LlamaIndex Framework vs TradingAgents](https://www.anchorterminal.com/compare/llamaindex-vs-tradingagents.md)\n- [LlamaIndex Framework vs AI SDK](https://www.anchorterminal.com/compare/llamaindex-vs-vercel-ai-sdk.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-11-07",
    "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": "guilds.run vs LlamaIndex Framework",
        "url": ""
      }
    ],
    "description": "LlamaIndex Framework scores 70 (BB) to guilds.run's 53.4 (D) for agent frameworks. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "guilds.run D 53.4",
      "LlamaIndex Framework BB 70",
      "scores"
    ],
    "h1": "guilds.run vs LlamaIndex Framework",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/guilds-run-vs-llamaindex",
    "published": "2026-10-01",
    "section": "tools",
    "title": "guilds.run vs LlamaIndex Framework for AI agents (2026)",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/guilds-run-vs-llamaindex"
  },
  "tokens": {
    "markdown": 5100,
    "slim": 3030
  },
  "version": 1
}
