{
  "data": {
    "a": {
      "slug": "autohotkey",
      "name": "AutoHotkey",
      "vendor": "AutoHotkey Foundation",
      "vendorUrl": "https://www.autohotkey.com",
      "kind": "sdk",
      "category": "desktop-automation",
      "summary": "AutoHotkey is a free, open-source scripting language and interpreter for Windows that sends keystrokes and mouse input, manages windows and controls, and defines hotkeys. Agents run scripts through the `AutoHotkey64.exe` command line, including from standard input.",
      "url": "https://www.anchorterminal.com/tools/autohotkey",
      "markdownUrl": "https://www.anchorterminal.com/tools/autohotkey.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/autohotkey.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/autohotkey.json",
      "repo": "https://github.com/AutoHotkey/AutoHotkey",
      "license": "GPL-2.0",
      "transports": [],
      "packages": [],
      "auth": "none",
      "authNotes": "No account, key or credential. Scripts run with the rights of the Windows user who starts the interpreter, and reach every window, control, file and process that user can.",
      "pricing": "free",
      "pricingNotes": "Free and open source under GPL-2.0, with nothing to buy and no hosted service. The repository's FUNDING.yml takes donations (checked 2026-10-14).",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the source, the documentation repository or the home page (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 13288,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://www.autohotkey.com/docs/v2/",
      "capabilities": [
        "desktop.control",
        "desktop.scripting"
      ],
      "tags": [
        "open-source",
        "local",
        "windows",
        "cli",
        "scripting",
        "free",
        "no-auth"
      ],
      "lastRelease": "2026-10-09",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 52.8,
        "grade": "D",
        "agentReady": false,
        "rank": 771,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 4,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 46,
          "maintenance": 72,
          "payments": 60,
          "reliability": 61,
          "schema": 54,
          "security": 24,
          "transparency": 73
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "An agent can write a script and run it through the command line, with a script read from standard input, `/Validate` and `/ErrorStdOut` for clean failures, and a function reference of 356 pages. It runs on Windows only with the user's full rights, and the repository has no CI or test suite.",
        "bestFor": "An agent automating Windows desktop apps on one machine by writing short scripts.",
        "strengths": [
          "Scripts can be piped to the interpreter on standard input with `*` as the filename",
          "`/Validate` checks a script without running it and exits non-zero on a load error",
          "Four 2.0.x bug-fix releases between 28 August and 9 October 2026, each in a dated changelog",
          "GPL-2.0 source, and no network code found in the interpreter",
          "Function reference of 356 pages with parameters, return values, errors raised and examples"
        ],
        "weaknesses": [
          "Windows only, and scripts act with every right of the user who runs them",
          "No CI workflow or test suite in the repository",
          "No security policy, security.txt or published advisory was found",
          "Bug reports go to a forum, and GitHub Issues was only switched on in October 2026",
          "Runtime errors open a dialog unless the script handles them with `OnError` or `try`"
        ],
        "agentNotes": [
          "Write output with `FileAppend text, \"*\"` and pipe the interpreter's output, since stdout does not appear at the console it was launched from",
          "Run `AutoHotkey64.exe /ErrorStdOut /Validate script.ahk` before running a new script",
          "Add `OnError` or `try` blocks so a runtime error does not leave a dialog open in an unattended run",
          "Target v2 syntax. v1 is unmaintained and its scripts do not run on v2"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 52.8
          }
        ],
        "editorialScores": {
          "ergonomics": 46,
          "maintenance": 72,
          "payments": 60,
          "reliability": 61,
          "schema": 54,
          "security": 24,
          "transparency": 73
        },
        "provenanceScore": 73
      },
      "connect": {
        "headless": {
          "run": "AutoHotkey64.exe /ErrorStdOut script.ahk arg1 arg2",
          "stdin": "type script.ahk | AutoHotkey64.exe /ErrorStdOut *",
          "validate": "AutoHotkey64.exe /ErrorStdOut /Validate script.ahk"
        }
      },
      "letme": {
        "capability": "https://letme.dev/desktop.control",
        "tool": "https://letme.dev/autohotkey"
      },
      "area": "developer",
      "provenance": {
        "legalEntity": "AutoHotkey Foundation LLC",
        "domain": "autohotkey.com",
        "domainRegistered": "2003-12-29",
        "domainNote": "The interpreter's version resource names AutoHotkey Foundation LLC as the company. RDAP for autohotkey.com gives a registration date of 2003-12-29.",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://www.autohotkey.com/docs/v2/ChangeLog.htm",
        "securityTxt": "unknown",
        "checked": "2026-10-14",
        "notes": [
          "No terms of service or privacy policy for the software was found. The home page links the GNU GPLv2 and a code signing policy, and no privacy or terms link, so `terms` and `privacy` are left out.",
          "www.autohotkey.com answered curl with a Cloudflare challenge on 14 October 2026. One read of the home page succeeded, and later reads of robots.txt, security.txt and the code signing policy returned 403, so security.txt is recorded as unknown.",
          "The changelog URL is the published copy of docs/ChangeLog.htm in the AutoHotkeyDocs repository, which was read from the repository."
        ],
        "score": 73
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/autohotkey.json"
    },
    "answer": "AutoHotkey scores 52.8 (D) on agent readiness against Automation Anywhere's 50.9 (D), and leads in 3 of 7 scored categories. Automation Anywhere leads on agent ergonomics and security \u0026 auth.",
    "b": {
      "slug": "automation-anywhere",
      "name": "Automation Anywhere",
      "vendor": "Automation Anywhere",
      "vendorUrl": "https://www.automationanywhere.com",
      "kind": "http-api",
      "category": "desktop-automation",
      "summary": "Automation Anywhere's Automation 360 is a cloud robotic process automation platform whose Control Room deploys bots that operate desktop and web applications. Outside agents run automations through the Control Room REST API or its MCP inbound endpoint.",
      "url": "https://www.anchorterminal.com/tools/automation-anywhere",
      "markdownUrl": "https://www.anchorterminal.com/tools/automation-anywhere.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/automation-anywhere.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/automation-anywhere.json",
      "license": "Proprietary service under Automation Anywhere's customer agreement and product-specific terms",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://\u003ccontrol-room\u003e/mcp",
      "packages": [],
      "auth": "mixed",
      "authNotes": "Control Room API calls carry either `X-Authorization` with a JSON token from the Authentication API or `Authorization: Bearer` with an OAuth token (v.27 and later), not both. MCP inbound uses OAuth 2.0. An administrator registers OAuth services in Settings, creates an OAuth client (regular web or single-page application) under Manage \u003e OAuth client, and enters the client ID, secret and URLs in the MCP client by hand, adding the client's redirect URL afterwards. Users sign in through the Control Room's OIDC or SAML identity provider, and RBAC decides which automations they can discover and run.",
      "pricing": "freemium",
      "pricingNotes": "Community Edition is free with no credit card required, for students, developers and small businesses under the stated limits. Paid Automation 360 Cloud plans have no published prices on automationanywhere.com, and the A+ Tokens and Accelerators terms refer to order forms. Whether Community Edition includes Control Room API or MCP inbound access was not stated (checked 2026-10-14).",
      "priceSummary": "Freemium",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Control Room API pages, the MCP inbound pages or the product-specific terms (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": 3,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://docs.automationanywhere.com/r/control-room-apis",
      "llmsTxt": "https://www.automationanywhere.com/llms.txt",
      "capabilities": [
        "desktop.rpa",
        "desktop.orchestration",
        "desktop.control"
      ],
      "tags": [
        "hosted",
        "official",
        "oauth",
        "enterprise",
        "mcp",
        "closed-source",
        "audit-log",
        "freemium"
      ],
      "lastRelease": "2026-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 50.9,
        "grade": "D",
        "agentReady": false,
        "rank": 815,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 60,
          "maintenance": 66,
          "payments": 15,
          "reliability": 35,
          "schema": 55,
          "security": 64,
          "transparency": 73
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "The Control Room's /mcp endpoint gives an MCP client three standard tools to discover, run and read automations under RBAC, with each run in the audit log. No API rate limits, error catalogue, SLA or prices were found in public pages, and DiscoverAutomation and RunAutomation need an Enterprise licence with the Process Reasoning Engine in the US or Europe.",
        "bestFor": "A company already running Automation 360 bots that wants an assistant such as Copilot or Claude to find and start them.",
        "strengths": [
          "MCP inbound at https://\u003ccontrol-room\u003e/mcp with DiscoverAutomation, RunAutomation, GetAutomationResult and custom inbound tools with typed input and output variables",
          "Each run started through MCP is logged as device acquired, bot sent, deployed and finished in the Control Room audit log",
          "Written API deprecation policy, with at least two years of support and at least a year's notice before end of life",
          "Filtering, sorting and pagination documented for list endpoints, with Swagger on every Control Room at /swagger/",
          "Community Edition is free with no credit card required"
        ],
        "weaknesses": [
          "No API rate limits, 429 handling or retry guidance found in the public Control Room API pages",
          "The published response code table lists only generic HTTP statuses, with no error bodies",
          "DiscoverAutomation and RunAutomation need an Enterprise licence with the Process Reasoning Engine, supported in the US and Europe only",
          "Cloud prices are not published and no SLA was found in the product-specific terms",
          "MCP OAuth requires manual client setup in the Control Room and supports only the Manual OAuth type in the client"
        ],
        "agentNotes": [
          "Call DiscoverAutomation with a specific query such as `Discover automations to create invoice in SAP`. It returns at most nine matches",
          "Keep the job ID from RunAutomation and poll GetAutomationResult until the status leaves Running/InProgress",
          "Send either `X-Authorization` with a token from the Authentication API or `Authorization: Bearer` from OAuth, never both in one request",
          "Match the case of every JSON parameter name. The Control Room API treats names as case-sensitive",
          "Use the v4 WLM endpoints. Eight v3 WLM endpoints were deprecated in v.43 and end with v.46"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 50.9
          }
        ],
        "editorialScores": {
          "ergonomics": 60,
          "maintenance": 66,
          "payments": 15,
          "reliability": 35,
          "schema": 55,
          "security": 64,
          "transparency": 59
        },
        "provenanceScore": 86
      },
      "letme": {
        "capability": "https://letme.dev/desktop.rpa",
        "tool": "https://letme.dev/automation-anywhere"
      },
      "area": "developer",
      "provenance": {
        "legalEntity": "Automation Anywhere, Inc.",
        "domain": "automationanywhere.com",
        "domainRegistered": "2006-02-15",
        "domainNote": "Cloud Control Rooms answer on customer subdomains of automationanywhere.digital, for example https://abc-prod-automationanywhere.digital per the MCP docs. www.automationanywhere.com/.well-known/security.txt returns 404.",
        "endpointOnVendorDomain": true,
        "terms": "https://www.automationanywhere.com/legal/terms",
        "privacy": "https://www.automationanywhere.com/legal/privacy",
        "statusPage": "https://status.automationanywhere.digital",
        "changelog": "https://docs.automationanywhere.com/r/automation-360/cloud-release-notes",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "The terms link is the website terms, last modified 5 November 2018. Customer use is governed by the Intelligent Automation Agreement and product-specific terms at /legal/intelligent-automation-agreement and /legal/product-specific-terms.",
          "The privacy policy was last modified on 1 April 2026.",
          "The vulnerability disclosure policy sends reports to disclosure@automationanywhere.com, promises a response within five business days and allows monetary compensation at the company's discretion.",
          "The status site is a Site24x7 StatusIQ page. Incident entries were readable but their dates were not in the page we received.",
          "RDAP for automationanywhere.com gives a registration date of 2006-02-15."
        ],
        "score": 86
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/automation-anywhere.json",
      "live": {
        "slug": "automation-anywhere",
        "probe": {
          "target": "https://\u003ccontrol-room\u003e/mcp",
          "method": "get",
          "lastAt": "2026-10-14T09:41:42.22842587Z",
          "lastOk": false,
          "lastStatus": 0,
          "lastMs": 0,
          "lastNote": "DNS lookup failed",
          "authRequired": false,
          "uptime24h": 0,
          "uptime30d": 0,
          "p50ms24h": 0,
          "p95ms24h": 0,
          "samples24h": 17,
          "samples30d": 17,
          "days": [
            {
              "date": "2026-10-14",
              "probes": 17,
              "ok": 0
            }
          ],
          "outages": [
            {
              "start": "2026-10-14T08:07:20.705930222Z",
              "end": "0001-01-01T00:00:00Z",
              "note": "DNS lookup failed"
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.automationanywhere.digital",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-14T08:52:44.216279023Z"
        },
        "updatedAt": "2026-10-14T09:41:42.22842587Z"
      }
    },
    "facts": [
      {
        "a": "SDK + MCP",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "AutoHotkey Foundation",
        "b": "Automation Anywhere",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://\u003ccontrol-room\u003e/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "GPL-2.0",
        "b": "Proprietary service under Automation Anywhere's customer agreement and product-specific terms",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "3",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-09",
        "b": "2026-10-07",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "2018-11-05",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "2026-04-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "",
        "b": "yes",
        "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": "13k stars",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "AutoHotkey scores 52.8 (D) on agent readiness against Automation Anywhere's 50.9 (D), and leads in 3 of 7 scored categories. Automation Anywhere leads on agent ergonomics and security \u0026 auth.",
        "question": "Which is better for AI agents, AutoHotkey or Automation Anywhere?"
      },
      {
        "answer": "No hosted endpoint is listed for AutoHotkey. Automation Anywhere has a hosted endpoint at https://\u003ccontrol-room\u003e/mcp.",
        "question": "Can an agent call AutoHotkey and Automation Anywhere without installing anything?"
      },
      {
        "answer": "AutoHotkey is open source (GPL-2.0). No open-source release is listed for Automation Anywhere.",
        "question": "Are AutoHotkey and Automation Anywhere open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 61 against 35",
          "Payments \u0026 pricing, 60 against 15",
          "Maintenance \u0026 community, 72 against 66"
        ],
        "also": [
          "No key needed to call it",
          "Open source"
        ],
        "goodFor": "An agent automating Windows desktop apps on one machine by writing short scripts.",
        "slug": "autohotkey",
        "watchFor": "Windows only, and scripts act with every right of the user who runs them"
      },
      {
        "aheadOn": [
          "Agent ergonomics, 60 against 46",
          "Security \u0026 auth, 64 against 24"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "A company already running Automation 360 bots that wants an assistant such as Copilot or Claude to find and start them.",
        "slug": "automation-anywhere",
        "watchFor": "No API rate limits, 429 handling or retry guidance found in the public Control Room API pages"
      }
    ],
    "job": {
      "capability": "desktop.control",
      "name": "Desktop app control"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/autohotkey-vs-autoit.json",
        "title": "AutoHotkey vs AutoIt",
        "url": "https://www.anchorterminal.com/compare/autohotkey-vs-autoit"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autohotkey-vs-robocorp.json",
        "title": "AutoHotkey vs Robocorp",
        "url": "https://www.anchorterminal.com/compare/autohotkey-vs-robocorp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autohotkey-vs-uipath.json",
        "title": "AutoHotkey vs UiPath",
        "url": "https://www.anchorterminal.com/compare/autohotkey-vs-uipath"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autoit-vs-automation-anywhere.json",
        "title": "AutoIt vs Automation Anywhere",
        "url": "https://www.anchorterminal.com/compare/autoit-vs-automation-anywhere"
      },
      {
        "json": "https://www.anchorterminal.com/compare/automation-anywhere-vs-robocorp.json",
        "title": "Automation Anywhere vs Robocorp",
        "url": "https://www.anchorterminal.com/compare/automation-anywhere-vs-robocorp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/automation-anywhere-vs-robot-framework.json",
        "title": "Automation Anywhere vs Robot Framework",
        "url": "https://www.anchorterminal.com/compare/automation-anywhere-vs-robot-framework"
      },
      {
        "json": "https://www.anchorterminal.com/compare/automation-anywhere-vs-uipath.json",
        "title": "Automation Anywhere vs UiPath",
        "url": "https://www.anchorterminal.com/compare/automation-anywhere-vs-uipath"
      },
      {
        "json": "https://www.anchorterminal.com/compare/autohotkey-vs-robot-framework.json",
        "title": "AutoHotkey vs Robot Framework",
        "url": "https://www.anchorterminal.com/compare/autohotkey-vs-robot-framework"
      }
    ],
    "scores": [
      {
        "autohotkey": 61,
        "automation-anywhere": 35,
        "by": 26,
        "edge": "autohotkey",
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "autohotkey": 54,
        "automation-anywhere": 55,
        "by": 1,
        "edge": "automation-anywhere",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "autohotkey": 46,
        "automation-anywhere": 60,
        "by": 14,
        "edge": "automation-anywhere",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "autohotkey": 24,
        "automation-anywhere": 64,
        "by": 40,
        "edge": "automation-anywhere",
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "autohotkey": 60,
        "automation-anywhere": 15,
        "by": 45,
        "edge": "autohotkey",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "autohotkey": 72,
        "automation-anywhere": 66,
        "by": 6,
        "edge": "autohotkey",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "autohotkey": 73,
        "automation-anywhere": 73,
        "by": 0,
        "edge": "",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "AutoHotkey scores 52.8 (D) on agent readiness against Automation Anywhere's 50.9 (D), and leads in 3 of 7 scored categories. Automation Anywhere leads on agent ergonomics and security \u0026 auth. Both do desktop app control.",
    "verdicts": {
      "autohotkey": "An agent can write a script and run it through the command line, with a script read from standard input, `/Validate` and `/ErrorStdOut` for clean failures, and a function reference of 356 pages. It runs on Windows only with the user's full rights, and the repository has no CI or test suite.",
      "automation-anywhere": "The Control Room's /mcp endpoint gives an MCP client three standard tools to discover, run and read automations under RBAC, with each run in the audit log. No API rate limits, error catalogue, SLA or prices were found in public pages, and DiscoverAutomation and RunAutomation need an Enterprise licence with the Process Reasoning Engine in the US or Europe."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/autohotkey-vs-automation-anywhere",
    "json": "https://www.anchorterminal.com/compare/autohotkey-vs-automation-anywhere.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/autohotkey-vs-automation-anywhere.md",
    "slim": "https://www.anchorterminal.com/compare/autohotkey-vs-automation-anywhere.min.md"
  },
  "markdown": "AutoHotkey scores 52.8 (D) on agent readiness against Automation Anywhere's 50.9 (D), and leads in 3 of 7 scored categories. Automation Anywhere leads on agent ergonomics and security \u0026 auth. Both do desktop app control.\n\n- AutoHotkey: grade D, 52.8/100, rank #771 of 1076. Markdown https://www.anchorterminal.com/tools/autohotkey.md · JSON https://www.anchorterminal.com/api/v1/tools/autohotkey.json\n- Automation Anywhere: grade D, 50.9/100, rank #815 of 1076. Markdown https://www.anchorterminal.com/tools/automation-anywhere.md · JSON https://www.anchorterminal.com/api/v1/tools/automation-anywhere.json\n- Best desktop and mobile app automation for AI agents: https://www.anchorterminal.com/best/desktop-automation/index.md\n- All 15 desktop comparisons: https://www.anchorterminal.com/compare/desktop-automation/index.md\n\n## Which one, for what\n\n### AutoHotkey (D)\n\nGood for: An agent automating Windows desktop apps on one machine by writing short scripts.\n\nAhead on:\n- Reliability, 61 against 35\n- Payments \u0026 pricing, 60 against 15\n- Maintenance \u0026 community, 72 against 66\n\nAlso in its favour:\n- No key needed to call it\n- Open source\n\nWatch for: Windows only, and scripts act with every right of the user who runs them\n\n### Automation Anywhere (D)\n\nGood for: A company already running Automation 360 bots that wants an assistant such as Copilot or Claude to find and start them.\n\nAhead on:\n- Agent ergonomics, 60 against 46\n- Security \u0026 auth, 64 against 24\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: No API rate limits, 429 handling or retry guidance found in the public Control Room API pages\n\n\n## Score by category\n\n| Category | Weight | AutoHotkey | Automation Anywhere | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 61 | 35 | AutoHotkey +26 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 54 | 55 | Automation Anywhere +1 |\n| Agent ergonomics | 13% (16.2 this run) | 46 | 60 | Automation Anywhere +14 |\n| Security \u0026 auth | 14% (17.5 this run) | 24 | 64 | Automation Anywhere +40 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 15 | AutoHotkey +45 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 72 | 66 | AutoHotkey +6 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 73 | 73 | even |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **52.8 · D** | **50.9 · D** | |\n\n## Facts side by side\n\n| Fact | AutoHotkey | Automation Anywhere |\n| --- | --- | --- |\n| Kind | SDK + MCP | HTTP API |\n| Vendor | AutoHotkey Foundation | Automation Anywhere |\n| Hosted endpoint | no (local only) | `https://\u003ccontrol-room\u003e/mcp` |\n| Transports |  | HTTP |\n| Auth | None | OAuth or key |\n| Pricing | Free | Freemium |\n| x402 | no | no |\n| Licence | GPL-2.0 | Proprietary service under Automation Anywhere's customer agreement and product-specific terms |\n| Tools exposed | none | 3 |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| Last release | 2026-10-09 | 2026-10-07 |\n| Terms last updated | no document linked | 2018-11-05 |\n| Privacy policy last updated | no document linked | 2026-04-01 |\n| Customer content may train models |  | yes |\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 | 13k stars | none |\n\n## Verdicts\n\n**AutoHotkey.** An agent can write a script and run it through the command line, with a script read from standard input, `/Validate` and `/ErrorStdOut` for clean failures, and a function reference of 356 pages. It runs on Windows only with the user's full rights, and the repository has no CI or test suite.\n\n**Automation Anywhere.** The Control Room's /mcp endpoint gives an MCP client three standard tools to discover, run and read automations under RBAC, with each run in the audit log. No API rate limits, error catalogue, SLA or prices were found in public pages, and DiscoverAutomation and RunAutomation need an Enterprise licence with the Process Reasoning Engine in the US or Europe.\n\n## Before you call either\n\n### AutoHotkey\n\n1. Write output with `FileAppend text, \"*\"` and pipe the interpreter's output, since stdout does not appear at the console it was launched from\n2. Run `AutoHotkey64.exe /ErrorStdOut /Validate script.ahk` before running a new script\n3. Add `OnError` or `try` blocks so a runtime error does not leave a dialog open in an unattended run\n4. Target v2 syntax. v1 is unmaintained and its scripts do not run on v2\n\n### Automation Anywhere\n\n1. Call DiscoverAutomation with a specific query such as `Discover automations to create invoice in SAP`. It returns at most nine matches\n2. Keep the job ID from RunAutomation and poll GetAutomationResult until the status leaves Running/InProgress\n3. Send either `X-Authorization` with a token from the Authentication API or `Authorization: Bearer` from OAuth, never both in one request\n4. Match the case of every JSON parameter name. The Control Room API treats names as case-sensitive\n5. Use the v4 WLM endpoints. Eight v3 WLM endpoints were deprecated in v.43 and end with v.46\n\n## Questions\n\n### Which is better for AI agents, AutoHotkey or Automation Anywhere?\n\nAutoHotkey scores 52.8 (D) on agent readiness against Automation Anywhere's 50.9 (D), and leads in 3 of 7 scored categories. Automation Anywhere leads on agent ergonomics and security \u0026 auth.\n\n### Can an agent call AutoHotkey and Automation Anywhere without installing anything?\n\nNo hosted endpoint is listed for AutoHotkey. Automation Anywhere has a hosted endpoint at https://\u003ccontrol-room\u003e/mcp.\n\n### Are AutoHotkey and Automation Anywhere open source?\n\nAutoHotkey is open source (GPL-2.0). No open-source release is listed for Automation Anywhere.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/autohotkey-vs-automation-anywhere.json, and with the fewest tokens: https://www.anchorterminal.com/compare/autohotkey-vs-automation-anywhere.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"autohotkey\", \"b\": \"automation-anywhere\"}`. From a terminal: `anchor compare autohotkey automation-anywhere`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/autohotkey.json and https://www.anchorterminal.com/api/v1/tools/automation-anywhere.json\n\n## Other comparisons with AutoHotkey or Automation Anywhere\n\n- [AutoHotkey vs AutoIt](https://www.anchorterminal.com/compare/autohotkey-vs-autoit.md)\n- [AutoHotkey vs Robocorp](https://www.anchorterminal.com/compare/autohotkey-vs-robocorp.md)\n- [AutoHotkey vs UiPath](https://www.anchorterminal.com/compare/autohotkey-vs-uipath.md)\n- [AutoIt vs Automation Anywhere](https://www.anchorterminal.com/compare/autoit-vs-automation-anywhere.md)\n- [Automation Anywhere vs Robocorp](https://www.anchorterminal.com/compare/automation-anywhere-vs-robocorp.md)\n- [Automation Anywhere vs Robot Framework](https://www.anchorterminal.com/compare/automation-anywhere-vs-robot-framework.md)\n- [Automation Anywhere vs UiPath](https://www.anchorterminal.com/compare/automation-anywhere-vs-uipath.md)\n- [AutoHotkey vs Robot Framework](https://www.anchorterminal.com/compare/autohotkey-vs-robot-framework.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-14",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "AutoHotkey vs Automation Anywhere",
        "url": ""
      }
    ],
    "description": "AutoHotkey scores 52.8 (D) to Automation Anywhere's 50.9 (D) for desktop app control. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "AutoHotkey D 52.8",
      "Automation Anywhere D 50.9",
      "scores"
    ],
    "h1": "AutoHotkey vs Automation Anywhere",
    "image": "https://www.anchorterminal.com/assets/og/compare-autohotkey-vs-automation-anywhere.png",
    "path": "/compare/autohotkey-vs-automation-anywhere",
    "published": "2026-10-01",
    "section": "tools",
    "title": "AutoHotkey vs Automation Anywhere for AI agents (2026)",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/compare/autohotkey-vs-automation-anywhere"
  },
  "tokens": {
    "markdown": 2050,
    "slim": 730
  },
  "version": 1
}
