{
  "data": {
    "a": {
      "slug": "orkes-conductor",
      "name": "Orkes Conductor Human tasks",
      "vendor": "Orkes",
      "vendorUrl": "https://orkes.io",
      "kind": "platform",
      "category": "human-in-the-loop",
      "summary": "Workflow orchestration platform, built on the open-source Conductor, with a Human task that pauses a workflow, assigns a form to a user or group and resumes with the submitted answer.",
      "url": "https://www.anchorterminal.com/tools/orkes-conductor",
      "markdownUrl": "https://www.anchorterminal.com/tools/orkes-conductor.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/orkes-conductor.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/orkes-conductor.json",
      "repo": "https://github.com/conductor-oss/conductor",
      "license": "Apache-2.0 (Conductor OSS and SDKs), proprietary (Orkes Conductor)",
      "transports": [
        "http",
        "stdio"
      ],
      "remoteUrl": "https://developer.orkescloud.com/api",
      "packages": [
        {
          "registry": "pypi",
          "name": "conductor-python"
        },
        {
          "registry": "npm",
          "name": "@io-orkes/conductor-javascript"
        },
        {
          "registry": "pypi",
          "name": "conductor-mcp"
        }
      ],
      "auth": "api-key",
      "authNotes": "Create an application in Conductor to get an access key ID and secret, exchange them at `POST /api/token` for a JWT, and send that JWT in an `X-Authorization` header. Tokens can be given an expiry in milliseconds, and a negative value means no expiry. External reviewers are identified by email or group name from your own identity system.",
      "pricing": "paid",
      "pricingNotes": "Two editions on https://orkes.io/pricing. Developer Edition is free and hosted at developer.orkescloud.com, includes Human tasks, and is meant for individual developers, with no SLA, variable performance and rate limits that may change. Enterprise is priced through sales and adds up to a 99.99 per cent availability SLA, SOC 2 Type II and a technical account manager. The Cloud support policy lists 99.9 and 99.0 per cent uptime plans with service credits (https://orkes.io/cloud-support-policy/). Conductor OSS is free under Apache-2.0, but the forms, assignment policies and Human Tasks API are documented for Orkes Conductor.",
      "priceSummary": "Paid",
      "where": "both",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": 19,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://orkes.io/content/reference-docs/operators/human",
      "llmsTxt": "https://orkes.io/content/llms.txt",
      "registryName": "io.github.conductor-oss/conductor-mcp",
      "capabilities": [
        "hitl.approve",
        "hitl.ask",
        "hitl.handoff",
        "hitl.audit",
        "agent.durable",
        "automation.workflows"
      ],
      "tags": [
        "hosted",
        "self-hosted",
        "open-source",
        "mcp",
        "llms-txt",
        "python",
        "typescript",
        "enterprise"
      ],
      "lastRelease": "2026-09-10",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 54,
        "grade": "C",
        "agentReady": false,
        "rank": 537,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 6,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 69,
          "maintenance": 81,
          "payments": 20,
          "reliability": 32,
          "schema": 65,
          "security": 71,
          "transparency": 44
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Escalation chains with a time limit per assignee and a choice of leaving the task open or failing the workflow. No built-in Slack or email prompt, so alerts need a trigger policy and a second workflow.",
        "bestFor": "Teams that already orchestrate agents as Conductor workflows and need formal routing, per-assignee deadlines and escalation without writing them.",
        "strengths": [
          "Escalation chains with a time limit per assignee and a choice of leaving the task open or failing the workflow",
          "Reviewers can be Conductor users or people in your own identity system, by email or group",
          "Human task search by state, assignee, claimant, full text and input or output fields",
          "Application keys with roles and per-resource permissions",
          "Published uptime commitments of 99.9 per cent with service credits, up to 99.99 on Enterprise"
        ],
        "weaknesses": [
          "No built-in Slack or email prompt, so alerts need a trigger policy and a second workflow",
          "Several objects to set up (form, task, workflow, application key) before the first approval",
          "Paid editions are contact sales only, and the free Developer Edition isn't for production",
          "No public status page or published API rate limits",
          "The MCP server has 19 tools but none for Human tasks, and no commit since January 2026"
        ],
        "agentNotes": [
          "Give every assignment you want to escalate from a non-zero `slaMinutes`, since 0 never expires and nothing can follow it",
          "Pick `TERMINATE` for risky actions so an unanswered approval fails the workflow instead of staying open to anyone",
          "Start approval workflows with an `idempotencyKey` and `RETURN_EXISTING`, so a retried start doesn't ask twice",
          "Refresh the JWT from `/api/token` with a set expiry instead of requesting one that never expires",
          "Fetch single doc pages, not llms.txt, which is the whole documentation in 2.57 MB"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 54
          }
        ],
        "editorialScores": {
          "ergonomics": 69,
          "maintenance": 81,
          "payments": 20,
          "reliability": 32,
          "schema": 65,
          "security": 71,
          "transparency": 41
        },
        "provenanceScore": 47
      },
      "connect": {
        "http": "TOKEN=$(curl -s -X POST https://developer.orkescloud.com/api/token -H 'Content-Type: application/json' \\\n  -d \"{\\\"keyId\\\":\\\"$ORKES_KEY_ID\\\",\\\"keySecret\\\":\\\"$ORKES_KEY_SECRET\\\"}\" | jq -r .token)\ncurl -X POST https://developer.orkescloud.com/api/human/tasks/search -H \"X-Authorization: $TOKEN\" \\\n  -H 'Content-Type: application/json' -d '{\"searchType\":\"ADMIN\",\"start\":0,\"size\":10,\"states\":[\"ASSIGNED\"]}'",
        "config": {
          "mcpServers": {
            "conductor": {
              "args": [
                "--config",
                "/absolute/path/to/conductor-config.json"
              ],
              "command": "conductor-mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/hitl.approve",
        "tool": "https://letme.dev/orkes-conductor"
      },
      "alsoIn": [
        "workflow-automation"
      ],
      "area": "agent-runtime",
      "provenance": {
        "legalEntity": "Orkes, Inc.",
        "domain": "orkes.io",
        "domainRegistered": "",
        "endpointOnVendorDomain": false,
        "terms": "https://orkes.io/cloud-services-agreement",
        "privacy": "https://orkes.io/privacy-policy",
        "statusPage": "",
        "changelog": "https://orkes.io/changelog",
        "securityTxt": "unknown",
        "checked": "2026-10-01",
        "notes": [
          "The privacy policy (last updated 2022-02-23) names Orkes, Inc. of Cupertino, California, and says data is stored on servers in the United States.",
          "The Developer Edition API runs on developer.orkescloud.com, not on orkes.io.",
          "The docs repository (orkes-io/docs) was last updated on 2026-07-06. Its static/llms.txt is the whole documentation in one 2.57 MB file.",
          "No public status page found. The Cloud support policy at orkes.io/cloud-support-policy sets uptime commitments by plan.",
          "We couldn't read security.txt or RDAP on 2026-10-01."
        ],
        "score": 47
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/orkes-conductor.json",
      "live": {
        "slug": "orkes-conductor",
        "probe": {
          "target": "https://developer.orkescloud.com/api",
          "method": "get",
          "lastAt": "2026-10-08T19:52:58.148658994Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 259,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 266,
          "p95ms24h": 309,
          "samples24h": 272,
          "samples30d": 1941,
          "days": [
            {
              "date": "2026-10-01",
              "probes": 109,
              "ok": 109
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 225,
              "ok": 225
            }
          ]
        },
        "versions": [
          {
            "registry": "github",
            "name": "conductor-oss/conductor",
            "version": "v3.32.5",
            "released": "2026-09-25",
            "seenAt": "2026-10-08T16:24:23.654479862Z"
          },
          {
            "registry": "npm",
            "name": "@io-orkes/conductor-javascript",
            "version": "4.0.0",
            "seenAt": "2026-10-08T16:24:21.7642259Z"
          },
          {
            "registry": "pypi",
            "name": "conductor-mcp",
            "version": "0.1.9",
            "released": "2026-02-02",
            "seenAt": "2026-10-08T16:24:22.601143193Z"
          },
          {
            "registry": "pypi",
            "name": "conductor-python",
            "version": "2.0.0",
            "released": "2026-08-03",
            "seenAt": "2026-10-08T16:24:21.566816762Z"
          }
        ],
        "githubStars": 32267,
        "npmWeekly": 27737,
        "pypiWeekly": 25875,
        "securityTxt": {
          "url": "https://orkes.io/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:58.210231735Z"
        },
        "llmsTxt": {
          "url": "https://orkes.io/content/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-08T14:00:44.117657451Z"
        },
        "domain": {
          "domain": "orkes.io",
          "checkedAt": "2026-10-04T13:08:35.313759321Z"
        },
        "pages": [
          {
            "url": "https://orkes.io/changelog",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-08T18:22:41.718992913Z",
            "changedAt": "2026-10-05T15:58:49.564568736Z",
            "fingerprint": "c3c272b8ceab"
          },
          {
            "url": "https://orkes.io/pricing",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-10-08T18:22:45.995265961Z",
            "changedAt": "2026-10-05T15:58:54.015519133Z",
            "fingerprint": "60794a9ff9f0"
          },
          {
            "url": "https://orkes.io/privacy-policy",
            "kind": "privacy",
            "status": 304,
            "checkedAt": "2026-10-08T18:22:47.984496888Z",
            "changedAt": "2026-10-05T15:58:55.93633372Z",
            "fingerprint": "1b1ff283612f"
          },
          {
            "url": "https://orkes.io/cloud-services-agreement",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-10-08T18:22:43.986527317Z",
            "changedAt": "2026-10-05T15:58:52.061432672Z",
            "fingerprint": "1427ed75b17a"
          }
        ],
        "updatedAt": "2026-10-08T19:52:58.148658994Z"
      }
    },
    "answer": "Restate scores 73.3 (BB) on agent readiness against Orkes Conductor Human tasks's 54 (C), and leads in 6 of 7 scored categories. Orkes Conductor Human tasks leads on security \u0026 auth.",
    "b": {
      "slug": "restate",
      "name": "Restate",
      "vendor": "Restate GmbH",
      "vendorUrl": "https://restate.dev",
      "kind": "platform",
      "category": "human-in-the-loop",
      "summary": "Durable execution runtime from Restate GmbH in Berlin, run as Restate Cloud, in the customer's own cloud account or self-hosted. Handlers pause on durable promises (awakeables and signals) and resume when a person answers over HTTP.",
      "url": "https://www.anchorterminal.com/tools/restate",
      "markdownUrl": "https://www.anchorterminal.com/tools/restate.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/restate.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/restate.json",
      "repo": "https://github.com/restatedev/restate",
      "license": "BSL 1.1 converting to Apache-2.0 four years after release (server), MIT (SDKs)",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@restatedev/restate-sdk"
        },
        {
          "registry": "pypi",
          "name": "restate-sdk"
        },
        {
          "registry": "npm",
          "name": "@restatedev/restate-sdk-clients"
        }
      ],
      "auth": "api-key",
      "authNotes": "Restate Cloud takes an API key (`key_...`) as a Bearer token on each environment's ingress at `https://\u003cenv_id\u003e.env.\u003cregion\u003e.restate.cloud:8080` and its Admin API on port 9070. Keys are created self-serve in the Developers tab of the Cloud UI with a role (the docs show Full and Admin). Access is self-serve after a browser signup, with no review. A self-hosted server has no authentication on its ingress or admin ports, and the docs expect a reverse proxy in front (https://docs.restate.dev/cloud/getting-started, https://docs.restate.dev/server/security).",
      "pricing": "freemium",
      "pricingNotes": "Free $0 with 100,000 durable actions a month, 1 GB of storage and 1-day history, no card, so an agent's owner can start without a contract. Starter $75 a month with 5 million actions, Business $300 with 20 million, Premium $1,000 with 50 million, Enterprise on request. Extra actions cost $25 per million on Starter and Business and $15 on Premium. One action is an invocation, a completion, a step, a sleep, a call or an awakeable, counted per started 64 KiB. Self-hosting is free under BSL 1.1 (https://restate.dev/pricing).",
      "priceSummary": "$75 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs or on the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 4530,
        "npmWeekly": 329023,
        "pypiWeekly": 76080,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.restate.dev/ai/patterns/human-in-the-loop",
      "llmsTxt": "https://docs.restate.dev/llms.txt",
      "openapi": "https://docs.restate.dev/schemas/openapi-admin.json",
      "capabilities": [
        "hitl.approve",
        "hitl.ask",
        "agent.durable",
        "automation.workflows",
        "automation.code"
      ],
      "tags": [
        "hosted",
        "self-hosted",
        "source-available",
        "freemium",
        "free-tier",
        "no-card",
        "llms-txt",
        "openapi",
        "typescript",
        "python",
        "java",
        "go",
        "rust",
        "status-page"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 73.3,
        "grade": "BB",
        "agentReady": true,
        "rank": 78,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 3,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 81,
          "maintenance": 92,
          "payments": 40,
          "reliability": 91,
          "schema": 85,
          "security": 61,
          "transparency": 50
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "An awakeable pauses a handler at no compute cost and resumes it from one HTTP request, with a durable timeout, on a free plan of 100,000 actions a month. Restate sends nothing to the approver, so the Slack message, email or inbox is the builder's code, and the published terms and privacy statement predate the paid plans.",
        "bestFor": "A team that already writes agent steps as durable handlers and wants a long, cheap wait for a human answer in TypeScript, Python, Java, Go or Rust, with the option to self-host.",
        "strengths": [
          "One HTTP request resolves or rejects an awakeable, and the waiting handler resumes after restarts or redeployment",
          "`orTimeout` puts a durable timer on the wait, so the remaining time survives a crash",
          "Free plan of 100,000 actions a month with no card, and $25 per extra million actions on Starter and Business",
          "Cloud Environments shows 100 per cent on the status page for the 90 days to 8 October 2026",
          "MIT SDKs for TypeScript, Python, Java and Kotlin, Go and Rust, with llms.txt and Markdown copies of every docs page"
        ],
        "weaknesses": [
          "No reviewer inbox, Slack app or email. The approval request and the reply endpoint are the builder's code",
          "Signals can't be resolved over HTTP yet, only from another handler (open issue of 5 October 2026)",
          "Self-hosted ingress and admin ports have no authentication, so the awakeable ID alone resolves a wait there",
          "The terms say Restate Cloud is free of charge and the privacy statement of 23 February 2022 covers only the website",
          "Server under BSL 1.1, which isn't an OSI licence, with no security.txt or SECURITY.md found"
        ],
        "agentNotes": [
          "Create the awakeable, send its ID inside `ctx.run`, then await the promise, so a retry doesn't send a second approval request",
          "Resolve with `POST /restate/awakeables/\u003cid\u003e/resolve` and a JSON body, or `/reject` with a text reason, which throws a terminal error in the handler",
          "On Restate Cloud send `Authorization: Bearer key_...` to `https://\u003cenv_id\u003e.env.\u003cregion\u003e.restate.cloud:8080`. On a self-hosted server put an authenticating proxy in front of port 8080",
          "Wrap the wait in `orTimeout` and decide what a timeout means. Without it the handler waits with no limit",
          "Retry ingress errors only on 408, 425, 429 or 5xx, and only when `x-restate-error-source` isn't `invocation`"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 73.3
          }
        ],
        "editorialScores": {
          "ergonomics": 81,
          "maintenance": 92,
          "payments": 40,
          "reliability": 91,
          "schema": 85,
          "security": 61,
          "transparency": 46
        },
        "provenanceScore": 54
      },
      "connect": {
        "install": "npm install --global @restatedev/restate-server@latest @restatedev/restate@latest",
        "http": "curl localhost:8080/restate/awakeables/sign_1M28aqY6ZfuwBmRnmyP/resolve --json 'true'",
        "claudeCode": "claude mcp add --transport http restate-docs https://docs.restate.dev/mcp"
      },
      "letme": {
        "capability": "https://letme.dev/hitl.approve",
        "tool": "https://letme.dev/restate"
      },
      "area": "agent-runtime",
      "unitPrices": [
        {
          "item": "Starter plan",
          "unit": "month",
          "usd": 75,
          "note": "5 million actions, 50 actions a second, 5 GB, 3-day history"
        },
        {
          "item": "Business plan",
          "unit": "month",
          "usd": 300,
          "note": "20 million actions, 200 actions a second, 20 GB, 7-day history"
        },
        {
          "item": "Premium plan",
          "unit": "month",
          "usd": 1000,
          "note": "50 million actions, 500 actions a second, 50 GB, 30-day history"
        },
        {
          "item": "Extra durable actions on Starter and Business",
          "unit": "1k-calls",
          "usd": 0.025,
          "note": "$25 per million actions, $15 per million on Premium"
        },
        {
          "item": "Extra virtual object storage",
          "unit": "gb-month",
          "usd": 0.5
        }
      ],
      "provenance": {
        "legalEntity": "Restate GmbH",
        "domain": "restate.dev",
        "domainRegistered": "2022-02-11",
        "endpointOnVendorDomain": false,
        "terms": "https://restate.dev/terms-and-conditions",
        "privacy": "",
        "statusPage": "https://status.restate.dev",
        "changelog": "https://docs.restate.dev/changelog/server",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The imprint names Restate GmbH, Knaackstr. 92, 10435 Berlin, Amtsgericht Charlottenburg HRB 240580 B. The server licence names Restate Software, Inc. and Restate GmbH as licensors.",
          "The general terms and conditions cover Restate Cloud by name, under German law with Berlin as the place of jurisdiction, and say its use is free of charge, which the pricing page no longer matches.",
          "No privacy field. The privacy statement at https://restate.dev/privacy is dated 23 February 2022 and covers the website, the newsletter and early code access, not customer data in Restate Cloud, and no other privacy policy was found.",
          "Restate Cloud environments answer at \u003cenv_id\u003e.env.\u003cregion\u003e.restate.cloud, a different domain from restate.dev.",
          "https://restate.dev/.well-known/security.txt returned 404 on 2026-10-08. The trust centre at trust.restate.dev is hosted by Vanta and didn't load in our reader.",
          "RDAP gives 2022-02-11 as the registration date of restate.dev."
        ],
        "score": 54
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/restate.json",
      "live": {
        "slug": "restate",
        "vendorStatus": {
          "page": "https://status.restate.dev",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T19:51:00.923121694Z"
        },
        "pages": [
          {
            "url": "https://docs.restate.dev/changelog/server",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:19:19.75301134Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1213cece2209"
          },
          {
            "url": "https://restate.dev/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:23:44.722910015Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "6eb8d04dcfe6"
          },
          {
            "url": "https://restate.dev/terms-and-conditions",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:23:46.891274553Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "32e2a89f3bf3"
          }
        ],
        "updatedAt": "2026-10-08T19:51:00.923121694Z"
      }
    },
    "facts": [
      {
        "a": "Model platform",
        "b": "Model platform",
        "name": "Kind"
      },
      {
        "a": "Orkes",
        "b": "Restate GmbH",
        "name": "Vendor"
      },
      {
        "a": "https://developer.orkescloud.com/api",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, stdio",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0 (Conductor OSS and SDKs), proprietary (Orkes Conductor)",
        "b": "BSL 1.1 converting to Apache-2.0 four years after release (server), MIT (SDKs)",
        "name": "Licence"
      },
      {
        "a": "19",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "io.github.conductor-oss/conductor-mcp",
        "b": "not listed",
        "name": "MCP registry"
      },
      {
        "a": "2026-09-10",
        "b": "2026-10-01",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "2022-02-23",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "4.5k stars, 329k npm/wk, 76k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "2.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Restate scores 73.3 (BB) on agent readiness against Orkes Conductor Human tasks's 54 (C), and leads in 6 of 7 scored categories. Orkes Conductor Human tasks leads on security \u0026 auth.",
        "question": "Which is better for AI agents, Orkes Conductor Human tasks or Restate?"
      },
      {
        "answer": "Orkes Conductor Human tasks is open source (Apache-2.0 (Conductor OSS and SDKs), proprietary (Orkes Conductor)). No open-source release is listed for Restate.",
        "question": "Are Orkes Conductor Human tasks and Restate open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Security \u0026 auth, 71 against 61"
        ],
        "also": [
          "A hosted endpoint, with nothing to install",
          "Runs on your own machine",
          "Open source"
        ],
        "goodFor": "Teams that already orchestrate agents as Conductor workflows and need formal routing, per-assignee deadlines and escalation without writing them.",
        "slug": "orkes-conductor",
        "watchFor": "No built-in Slack or email prompt, so alerts need a trigger policy and a second workflow"
      },
      {
        "aheadOn": [
          "Reliability, 91 against 32",
          "Schema \u0026 documentation, 85 against 65",
          "Agent ergonomics, 81 against 69",
          "Payments \u0026 pricing, 40 against 20",
          "Maintenance \u0026 community, 92 against 81",
          "Transparency \u0026 trust, 50 against 44"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "Free to start without a card"
        ],
        "goodFor": "A team that already writes agent steps as durable handlers and wants a long, cheap wait for a human answer in TypeScript, Python, Java, Go or Rust, with the option to self-host.",
        "slug": "restate",
        "watchFor": "No reviewer inbox, Slack app or email. The approval request and the reply endpoint are the builder's code"
      }
    ],
    "job": {
      "capability": "hitl.approve",
      "name": "Hitl approve"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/gotohuman-vs-orkes-conductor.json",
        "title": "gotoHuman vs Orkes Conductor Human tasks",
        "url": "https://www.anchorterminal.com/compare/gotohuman-vs-orkes-conductor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gotohuman-vs-restate.json",
        "title": "gotoHuman vs Restate",
        "url": "https://www.anchorterminal.com/compare/gotohuman-vs-restate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inngest-vs-orkes-conductor.json",
        "title": "Inngest vs Orkes Conductor Human tasks",
        "url": "https://www.anchorterminal.com/compare/inngest-vs-orkes-conductor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inngest-vs-restate.json",
        "title": "Inngest vs Restate",
        "url": "https://www.anchorterminal.com/compare/inngest-vs-restate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/orkes-conductor-vs-permit-mcp-gateway.json",
        "title": "Orkes Conductor Human tasks vs Permit MCP Gateway",
        "url": "https://www.anchorterminal.com/compare/orkes-conductor-vs-permit-mcp-gateway"
      },
      {
        "json": "https://www.anchorterminal.com/compare/orkes-conductor-vs-pushary.json",
        "title": "Orkes Conductor Human tasks vs Pushary",
        "url": "https://www.anchorterminal.com/compare/orkes-conductor-vs-pushary"
      },
      {
        "json": "https://www.anchorterminal.com/compare/orkes-conductor-vs-temporal.json",
        "title": "Orkes Conductor Human tasks vs Temporal",
        "url": "https://www.anchorterminal.com/compare/orkes-conductor-vs-temporal"
      },
      {
        "json": "https://www.anchorterminal.com/compare/orkes-conductor-vs-trigger-dev.json",
        "title": "Orkes Conductor Human tasks vs Trigger.dev",
        "url": "https://www.anchorterminal.com/compare/orkes-conductor-vs-trigger-dev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/orkes-conductor-vs-withhuman.json",
        "title": "Orkes Conductor Human tasks vs withHuman",
        "url": "https://www.anchorterminal.com/compare/orkes-conductor-vs-withhuman"
      },
      {
        "json": "https://www.anchorterminal.com/compare/permit-mcp-gateway-vs-restate.json",
        "title": "Permit MCP Gateway vs Restate",
        "url": "https://www.anchorterminal.com/compare/permit-mcp-gateway-vs-restate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pushary-vs-restate.json",
        "title": "Pushary vs Restate",
        "url": "https://www.anchorterminal.com/compare/pushary-vs-restate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/restate-vs-temporal.json",
        "title": "Restate vs Temporal",
        "url": "https://www.anchorterminal.com/compare/restate-vs-temporal"
      },
      {
        "json": "https://www.anchorterminal.com/compare/restate-vs-trigger-dev.json",
        "title": "Restate vs Trigger.dev",
        "url": "https://www.anchorterminal.com/compare/restate-vs-trigger-dev"
      },
      {
        "json": "https://www.anchorterminal.com/compare/restate-vs-withhuman.json",
        "title": "Restate vs withHuman",
        "url": "https://www.anchorterminal.com/compare/restate-vs-withhuman"
      }
    ],
    "scores": [
      {
        "by": 59,
        "edge": "restate",
        "key": "reliability",
        "name": "Reliability",
        "orkes-conductor": 32,
        "restate": 91,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 20,
        "edge": "restate",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "orkes-conductor": 65,
        "restate": 85,
        "weight": 13
      },
      {
        "by": 12,
        "edge": "restate",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "orkes-conductor": 69,
        "restate": 81,
        "weight": 13
      },
      {
        "by": 10,
        "edge": "orkes-conductor",
        "key": "security",
        "name": "Security \u0026 auth",
        "orkes-conductor": 71,
        "restate": 61,
        "weight": 14
      },
      {
        "by": 20,
        "edge": "restate",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "orkes-conductor": 20,
        "restate": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 11,
        "edge": "restate",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "orkes-conductor": 81,
        "restate": 92,
        "weight": 7
      },
      {
        "by": 6,
        "edge": "restate",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "orkes-conductor": 44,
        "restate": 50,
        "weight": 7
      }
    ],
    "summary": "Restate scores 73.3 (BB) on agent readiness against Orkes Conductor Human tasks's 54 (C), and leads in 6 of 7 scored categories. Orkes Conductor Human tasks leads on security \u0026 auth. Both do hitl approve.",
    "verdicts": {
      "orkes-conductor": "Escalation chains with a time limit per assignee and a choice of leaving the task open or failing the workflow. No built-in Slack or email prompt, so alerts need a trigger policy and a second workflow.",
      "restate": "An awakeable pauses a handler at no compute cost and resumes it from one HTTP request, with a durable timeout, on a free plan of 100,000 actions a month. Restate sends nothing to the approver, so the Slack message, email or inbox is the builder's code, and the published terms and privacy statement predate the paid plans."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/orkes-conductor-vs-restate",
    "json": "https://www.anchorterminal.com/compare/orkes-conductor-vs-restate.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/orkes-conductor-vs-restate.md",
    "slim": "https://www.anchorterminal.com/compare/orkes-conductor-vs-restate.min.md"
  },
  "markdown": "Restate scores 73.3 (BB) on agent readiness against Orkes Conductor Human tasks's 54 (C), and leads in 6 of 7 scored categories. Orkes Conductor Human tasks leads on security \u0026 auth. Both do hitl approve.\n\n- Orkes Conductor Human tasks: grade C, 54/100, rank #537 of 722. Markdown https://www.anchorterminal.com/tools/orkes-conductor.md · JSON https://www.anchorterminal.com/api/v1/tools/orkes-conductor.json\n- Restate: grade BB, 73.3/100, rank #78 of 722. Markdown https://www.anchorterminal.com/tools/restate.md · JSON https://www.anchorterminal.com/api/v1/tools/restate.json\n\n## Which one, for what\n\n### Orkes Conductor Human tasks (C)\n\nGood for: Teams that already orchestrate agents as Conductor workflows and need formal routing, per-assignee deadlines and escalation without writing them.\n\nAhead on:\n- Security \u0026 auth, 71 against 61\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n- Runs on your own machine\n- Open source\n\nWatch for: No built-in Slack or email prompt, so alerts need a trigger policy and a second workflow\n\n### Restate (BB)\n\nGood for: A team that already writes agent steps as durable handlers and wants a long, cheap wait for a human answer in TypeScript, Python, Java, Go or Rust, with the option to self-host.\n\nAhead on:\n- Reliability, 91 against 32\n- Schema \u0026 documentation, 85 against 65\n- Agent ergonomics, 81 against 69\n- Payments \u0026 pricing, 40 against 20\n- Maintenance \u0026 community, 92 against 81\n- Transparency \u0026 trust, 50 against 44\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- Free to start without a card\n\nWatch for: No reviewer inbox, Slack app or email. The approval request and the reply endpoint are the builder's code\n\n\n## Score by category\n\n| Category | Weight | Orkes Conductor Human tasks | Restate | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 32 | 91 | Restate +59 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 65 | 85 | Restate +20 |\n| Agent ergonomics | 13% (16.2 this run) | 69 | 81 | Restate +12 |\n| Security \u0026 auth | 14% (17.5 this run) | 71 | 61 | Orkes Conductor Human tasks +10 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 40 | Restate +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 81 | 92 | Restate +11 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 44 | 50 | Restate +6 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **54 · C** | **73.3 · BB** | |\n\n## Facts side by side\n\n| Fact | Orkes Conductor Human tasks | Restate |\n| --- | --- | --- |\n| Kind | Model platform | Model platform |\n| Vendor | Orkes | Restate GmbH |\n| Hosted endpoint | `https://developer.orkescloud.com/api` | no (local only) |\n| Transports | HTTP, stdio | HTTP |\n| Auth | API key | API key |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Licence | Apache-2.0 (Conductor OSS and SDKs), proprietary (Orkes Conductor) | BSL 1.1 converting to Apache-2.0 four years after release (server), MIT (SDKs) |\n| Tools exposed | 19 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| MCP registry | `io.github.conductor-oss/conductor-mcp` | not listed |\n| Last release | 2026-09-10 | 2026-10-01 |\n| Terms last updated | no date given | couldn't be read |\n| Privacy policy last updated | 2022-02-23 | no document linked |\n| Customer content may train models | not found in the text | couldn't be read |\n| Terms restrict automated access | not found in the text | couldn't be read |\n| Terms restrict benchmarking | not found in the text | couldn't be read |\n| Terms or service can change without notice | not found in the text | couldn't be read |\n| Arbitration or class-action waiver | not found in the text | couldn't be read |\n| Popularity | none | 4.5k stars, 329k npm/wk, 76k PyPI/wk |\n| Agent reviews | 2.5/5 (2) | none |\n\n## Verdicts\n\n**Orkes Conductor Human tasks.** Escalation chains with a time limit per assignee and a choice of leaving the task open or failing the workflow. No built-in Slack or email prompt, so alerts need a trigger policy and a second workflow.\n\n**Restate.** An awakeable pauses a handler at no compute cost and resumes it from one HTTP request, with a durable timeout, on a free plan of 100,000 actions a month. Restate sends nothing to the approver, so the Slack message, email or inbox is the builder's code, and the published terms and privacy statement predate the paid plans.\n\n## Before you call either\n\n### Orkes Conductor Human tasks\n\n1. Give every assignment you want to escalate from a non-zero `slaMinutes`, since 0 never expires and nothing can follow it\n2. Pick `TERMINATE` for risky actions so an unanswered approval fails the workflow instead of staying open to anyone\n3. Start approval workflows with an `idempotencyKey` and `RETURN_EXISTING`, so a retried start doesn't ask twice\n4. Refresh the JWT from `/api/token` with a set expiry instead of requesting one that never expires\n5. Fetch single doc pages, not llms.txt, which is the whole documentation in 2.57 MB\n\n### Restate\n\n1. Create the awakeable, send its ID inside `ctx.run`, then await the promise, so a retry doesn't send a second approval request\n2. Resolve with `POST /restate/awakeables/\u003cid\u003e/resolve` and a JSON body, or `/reject` with a text reason, which throws a terminal error in the handler\n3. On Restate Cloud send `Authorization: Bearer key_...` to `https://\u003cenv_id\u003e.env.\u003cregion\u003e.restate.cloud:8080`. On a self-hosted server put an authenticating proxy in front of port 8080\n4. Wrap the wait in `orTimeout` and decide what a timeout means. Without it the handler waits with no limit\n5. Retry ingress errors only on 408, 425, 429 or 5xx, and only when `x-restate-error-source` isn't `invocation`\n\n## Questions\n\n### Which is better for AI agents, Orkes Conductor Human tasks or Restate?\n\nRestate scores 73.3 (BB) on agent readiness against Orkes Conductor Human tasks's 54 (C), and leads in 6 of 7 scored categories. Orkes Conductor Human tasks leads on security \u0026 auth.\n\n### Are Orkes Conductor Human tasks and Restate open source?\n\nOrkes Conductor Human tasks is open source (Apache-2.0 (Conductor OSS and SDKs), proprietary (Orkes Conductor)). No open-source release is listed for Restate.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/orkes-conductor-vs-restate.json, and with the fewest tokens: https://www.anchorterminal.com/compare/orkes-conductor-vs-restate.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"orkes-conductor\", \"b\": \"restate\"}`. From a terminal: `anchor compare orkes-conductor restate`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/orkes-conductor.json and https://www.anchorterminal.com/api/v1/tools/restate.json\n\n## Other comparisons with Orkes Conductor Human tasks or Restate\n\n- [gotoHuman vs Orkes Conductor Human tasks](https://www.anchorterminal.com/compare/gotohuman-vs-orkes-conductor.md)\n- [gotoHuman vs Restate](https://www.anchorterminal.com/compare/gotohuman-vs-restate.md)\n- [Inngest vs Orkes Conductor Human tasks](https://www.anchorterminal.com/compare/inngest-vs-orkes-conductor.md)\n- [Inngest vs Restate](https://www.anchorterminal.com/compare/inngest-vs-restate.md)\n- [Orkes Conductor Human tasks vs Permit MCP Gateway](https://www.anchorterminal.com/compare/orkes-conductor-vs-permit-mcp-gateway.md)\n- [Orkes Conductor Human tasks vs Pushary](https://www.anchorterminal.com/compare/orkes-conductor-vs-pushary.md)\n- [Orkes Conductor Human tasks vs Temporal](https://www.anchorterminal.com/compare/orkes-conductor-vs-temporal.md)\n- [Orkes Conductor Human tasks vs Trigger.dev](https://www.anchorterminal.com/compare/orkes-conductor-vs-trigger-dev.md)\n- [Orkes Conductor Human tasks vs withHuman](https://www.anchorterminal.com/compare/orkes-conductor-vs-withhuman.md)\n- [Permit MCP Gateway vs Restate](https://www.anchorterminal.com/compare/permit-mcp-gateway-vs-restate.md)\n- [Pushary vs Restate](https://www.anchorterminal.com/compare/pushary-vs-restate.md)\n- [Restate vs Temporal](https://www.anchorterminal.com/compare/restate-vs-temporal.md)\n- [Restate vs Trigger.dev](https://www.anchorterminal.com/compare/restate-vs-trigger-dev.md)\n- [Restate vs withHuman](https://www.anchorterminal.com/compare/restate-vs-withhuman.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "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": "Orkes Conductor Human tasks vs Restate",
        "url": ""
      }
    ],
    "description": "Restate scores 73.3 (BB) on agent readiness against Orkes Conductor Human tasks's 54 (C), and leads in 6 of 7 scored categories. Orkes Conductor Human tasks leads on security \u0026 auth. Both do hitl approve. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Orkes Conductor Human tasks C 54",
      "Restate BB 73.3",
      "scores"
    ],
    "h1": "Orkes Conductor Human tasks vs Restate",
    "image": "https://www.anchorterminal.com/assets/og/compare-orkes-conductor-vs-restate.png",
    "path": "/compare/orkes-conductor-vs-restate",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Orkes Conductor Human tasks vs Restate for AI agents, C 54 vs BB 73.3",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/orkes-conductor-vs-restate"
  },
  "tokens": {
    "markdown": 2250,
    "slim": 830
  },
  "version": 1
}
