{
  "data": {
    "similar": [
      {
        "grade": "C",
        "json": "https://www.anchorterminal.com/tools/orkes-conductor.json",
        "name": "Orkes Conductor Human tasks",
        "score": 54,
        "shared": [
          "hitl.ask",
          "hitl.handoff"
        ],
        "slug": "orkes-conductor"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/temporal.json",
        "name": "Temporal",
        "score": 77.2,
        "shared": [
          "hitl.ask"
        ],
        "slug": "temporal"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/trigger-dev.json",
        "name": "Trigger.dev",
        "score": 74.7,
        "shared": [
          "hitl.ask"
        ],
        "slug": "trigger-dev"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/restate.json",
        "name": "Restate",
        "score": 73.3,
        "shared": [
          "hitl.ask"
        ],
        "slug": "restate"
      },
      {
        "grade": "B",
        "json": "https://www.anchorterminal.com/tools/hatchet.json",
        "name": "Hatchet",
        "score": 68.3,
        "shared": [
          "hitl.ask"
        ],
        "slug": "hatchet"
      },
      {
        "grade": "B",
        "json": "https://www.anchorterminal.com/tools/inngest.json",
        "name": "Inngest",
        "score": 66,
        "shared": [
          "hitl.ask"
        ],
        "slug": "inngest"
      }
    ],
    "tool": {
      "slug": "bigarrow",
      "name": "Big Arrow",
      "vendor": "Franz Enzenhofer",
      "vendorUrl": "https://github.com/franzenzenhofer/big-arrow-on-the-screen",
      "kind": "sdk",
      "category": "human-in-the-loop",
      "summary": "bigarrow is an open-source macOS command-line tool, with a skill for Claude Code and Codex, that lets an agent draw a click-through arrow and a sign over any window to show a person where to click, type or decide.",
      "url": "https://www.anchorterminal.com/tools/bigarrow",
      "markdownUrl": "https://www.anchorterminal.com/tools/bigarrow.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/bigarrow.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/bigarrow.json",
      "repo": "https://github.com/franzenzenhofer/big-arrow-on-the-screen",
      "license": "MIT",
      "transports": [],
      "packages": [],
      "auth": "none",
      "authNotes": "No account, key or network access. Drawing needs no macOS permission. Pointing at a UI element by label (`--element`, `elements`, `--until-click`, `--app App:title`) needs Accessibility, and `--window App:title` needs Screen Recording, both granted to the app that runs the shell (Terminal, Ghostty, VS Code), never to bigarrow itself.",
      "pricing": "free",
      "pricingNotes": "Free under MIT with nothing to buy. Installed from the author's Homebrew tap, which builds from source, or as an ad hoc signed universal binary from GitHub Releases.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the source, the README or the skill (checked 2026-10-15). The tool has no paid tier and makes no network calls.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 747,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-15"
      },
      "docsUrl": "https://github.com/franzenzenhofer/big-arrow-on-the-screen#readme",
      "capabilities": [
        "hitl.handoff",
        "hitl.ask"
      ],
      "tags": [
        "open-source",
        "local",
        "free",
        "no-card",
        "mit",
        "macos",
        "swift",
        "cli",
        "agent-skill",
        "json-output",
        "pre-1.0",
        "new"
      ],
      "lastRelease": "2026-10-12",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 70.7,
        "grade": "BB",
        "agentReady": true,
        "rank": 151,
        "ranked": true,
        "rankOf": 1094,
        "categoryRank": 4,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 77,
          "maintenance": 70,
          "payments": 60,
          "reliability": 75,
          "schema": 78,
          "security": 67,
          "transparency": 59
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "breakdown": [
          {
            "key": "reliability",
            "name": "Reliability",
            "weight": 16,
            "effectiveWeight": 20,
            "score": 75,
            "points": 15,
            "reason": "Read with the local-software lines, since the owner runs the binary. The project is seven days old (first commit 8 October 2026). Installs from the author's Homebrew tap, which builds v0.4.6 from the tagged source, or as an ad hoc signed universal binary on GitHub Releases, with macOS 14 and Xcode 16 stated (20). CI runs SwiftLint in strict mode, a release build and `swift test` with the window-server tests switched on, and the last 25 runs on main passed as of 15 October 2026 (25). Two open issues, a request for Windows and Linux and a note of thanks, and no open bug. The one outside bug report, a box drifting while it pulsed, was fixed with a regression test in v0.4.3 the day it arrived. A week of history is thin evidence (20). Keep a Changelog and semantic version tags, but flags removed or replaced in 0.2.0 and 0.3.0 (`--raise`, `--shadow`) are listed under Changed, not marked as breaking (10). Version 0.4.6, not 1.0 and not declared stable (0)."
          },
          {
            "key": "performance",
            "name": "Performance",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
          },
          {
            "key": "schema",
            "name": "Schema \u0026 documentation",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 78,
            "points": 12.68,
            "reason": "Graded on the CLI and its skill. Every command takes `--json`, and exit codes 0, 2, 3 and 4 are a stated contract, but no JSON Schema for the output is published and inputs are command flags (10 of 25). The skill is Markdown in the Agent Skills format written for agents, with a 182-token description, a 1,528-token SKILL.md and a 1,118-token reference loaded on demand, per the README's counts (10). The skill says when to use it, including a mandatory trigger for time-critical steps, and when not to, such as never walking a person through menus and skipping the close button unless asked (18). Flags are typed by swift-argument-parser with value lists for shape, style, size, border and colour presets, and the formula's test checks that an unknown size exits 2. The sign text is free text by design (12). The README and skill carry many worked commands, and exit codes and the permission errors are documented, with a not-found error that lists what exists (13). Semantic versions and a dated changelog (15)."
          },
          {
            "key": "ergonomics",
            "name": "Agent ergonomics",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 77,
            "points": 12.51,
            "reason": "A CLI adds no tool definitions to context, and only the skill's 182-token description is always loaded. Results are a single small JSON object (22 of 25). `elements --app X --match` filters what label targeting can match, and there is nothing else to page (14 of 20). Exit codes separate bad input, target not found and missing permission, and the permission error names the host app and the settings pane, with `doctor` to check (18). `--dry-run` resolves and plans without drawing, every arrow ends by itself and `stop` can target one pid, one session or all. A repeated `start` draws a second arrow rather than replacing the first (14 of 20). Sensible defaults (8 seconds for `point`, 300 for `start`, raise the target) and one required option, the target. One CLI and no SDK in a second language (9 of 15)."
          },
          {
            "key": "security",
            "name": "Security \u0026 auth",
            "weight": 14,
            "effectiveWeight": 17.5,
            "score": 67,
            "points": 11.73,
            "reason": "No credential model to grade, since the tool holds no secret and makes no network call, so read with the framework lines as for other local agent tools. 30 for what leaves the machine by default, 20 for least privilege and approvals, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. No network code, telemetry or account found in the source, and the only dependency is swift-argument-parser (30). It never clicks, types or captures, drawing needs no permission, and Accessibility is needed only for label targeting. Boxes and rings are outlines, the sign keeps clear of its target, and a click on the sign removes it, each checked by a test per the README. Raising the target app is on by default with `--no-raise` to opt out (18). The skill tells the agent to put on the sign what an approval, payment or deletion does. Element labels read from other apps return as text the agent reads, with no guidance on treating them as untrusted (9). Live arrows are recorded in `$TMPDIR/bigarrow/\u003cpid\u003e.json`, sign text included, while shown, and `--json` reports how each ended. No persistent log (6). No SECURITY.md, security.txt, bug bounty or advisories. The main branch is protected against force pushes and deletion, and the release binary is signed ad hoc and not notarised (4)."
          },
          {
            "key": "payments",
            "name": "Payments \u0026 pricing",
            "weight": 10,
            "effectiveWeight": 12.5,
            "score": 60,
            "points": 7.5,
            "reason": "No payment protocol (0). Read with the self-hosted rule. Free under MIT with nothing to buy (20). No card or account (20). Installs with one Homebrew command and needs no signup (20)."
          },
          {
            "key": "tasks",
            "name": "Task success",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
          },
          {
            "key": "maintenance",
            "name": "Maintenance \u0026 community",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 70,
            "points": 6.13,
            "reason": "v0.4.6 on 12 October 2026 (30). Thirteen tagged releases between 8 and 12 October 2026 (20). The Hacker News thread was triaged into ten tickets, closed the same day, and two outside pull requests were declined with reasons in the triage note. Two outside issues opened on 12 and 13 October had no maintainer reply by 15 October, and other contributors' pull requests come from one account at the author's domain (12 of 25). Not an MCP server and no SDK, and the skill is not in a registry (0). One dependency, current Swift 6 tooling and CI green on main. No Dependabot configuration found (8)."
          },
          {
            "key": "transparency",
            "name": "Transparency \u0026 trust",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 59,
            "points": 5.16,
            "note": "editorial 65, provenance 53",
            "reason": "MIT in LICENSE and in the Homebrew formula, with the bundled Feather icons' MIT licence in THIRD_PARTY_NOTICES.md (30). No privacy policy. The README says there is no daemon, account or telemetry, and the source we read has no network code, which agrees. Sign text, which can hold a value to paste, sits in a per-user temporary file while the arrow is shown, which the README does not mention (15). No deprecation policy. Removed and renamed flags are named in the dated changelog (4). No telemetry to disclose, and the README says so. Nothing is sent, so there is nothing to opt out of (16)."
          }
        ],
        "assessment": {
          "date": "2026-10-15",
          "basis": "public evidence",
          "confidence": "medium",
          "notes": {
            "ergonomics": "A CLI adds no tool definitions to context, and only the skill's 182-token description is always loaded. Results are a single small JSON object (22 of 25). `elements --app X --match` filters what label targeting can match, and there is nothing else to page (14 of 20). Exit codes separate bad input, target not found and missing permission, and the permission error names the host app and the settings pane, with `doctor` to check (18). `--dry-run` resolves and plans without drawing, every arrow ends by itself and `stop` can target one pid, one session or all. A repeated `start` draws a second arrow rather than replacing the first (14 of 20). Sensible defaults (8 seconds for `point`, 300 for `start`, raise the target) and one required option, the target. One CLI and no SDK in a second language (9 of 15).",
            "maintenance": "v0.4.6 on 12 October 2026 (30). Thirteen tagged releases between 8 and 12 October 2026 (20). The Hacker News thread was triaged into ten tickets, closed the same day, and two outside pull requests were declined with reasons in the triage note. Two outside issues opened on 12 and 13 October had no maintainer reply by 15 October, and other contributors' pull requests come from one account at the author's domain (12 of 25). Not an MCP server and no SDK, and the skill is not in a registry (0). One dependency, current Swift 6 tooling and CI green on main. No Dependabot configuration found (8).",
            "payments": "No payment protocol (0). Read with the self-hosted rule. Free under MIT with nothing to buy (20). No card or account (20). Installs with one Homebrew command and needs no signup (20).",
            "reliability": "Read with the local-software lines, since the owner runs the binary. The project is seven days old (first commit 8 October 2026). Installs from the author's Homebrew tap, which builds v0.4.6 from the tagged source, or as an ad hoc signed universal binary on GitHub Releases, with macOS 14 and Xcode 16 stated (20). CI runs SwiftLint in strict mode, a release build and `swift test` with the window-server tests switched on, and the last 25 runs on main passed as of 15 October 2026 (25). Two open issues, a request for Windows and Linux and a note of thanks, and no open bug. The one outside bug report, a box drifting while it pulsed, was fixed with a regression test in v0.4.3 the day it arrived. A week of history is thin evidence (20). Keep a Changelog and semantic version tags, but flags removed or replaced in 0.2.0 and 0.3.0 (`--raise`, `--shadow`) are listed under Changed, not marked as breaking (10). Version 0.4.6, not 1.0 and not declared stable (0).",
            "schema": "Graded on the CLI and its skill. Every command takes `--json`, and exit codes 0, 2, 3 and 4 are a stated contract, but no JSON Schema for the output is published and inputs are command flags (10 of 25). The skill is Markdown in the Agent Skills format written for agents, with a 182-token description, a 1,528-token SKILL.md and a 1,118-token reference loaded on demand, per the README's counts (10). The skill says when to use it, including a mandatory trigger for time-critical steps, and when not to, such as never walking a person through menus and skipping the close button unless asked (18). Flags are typed by swift-argument-parser with value lists for shape, style, size, border and colour presets, and the formula's test checks that an unknown size exits 2. The sign text is free text by design (12). The README and skill carry many worked commands, and exit codes and the permission errors are documented, with a not-found error that lists what exists (13). Semantic versions and a dated changelog (15).",
            "security": "No credential model to grade, since the tool holds no secret and makes no network call, so read with the framework lines as for other local agent tools. 30 for what leaves the machine by default, 20 for least privilege and approvals, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. No network code, telemetry or account found in the source, and the only dependency is swift-argument-parser (30). It never clicks, types or captures, drawing needs no permission, and Accessibility is needed only for label targeting. Boxes and rings are outlines, the sign keeps clear of its target, and a click on the sign removes it, each checked by a test per the README. Raising the target app is on by default with `--no-raise` to opt out (18). The skill tells the agent to put on the sign what an approval, payment or deletion does. Element labels read from other apps return as text the agent reads, with no guidance on treating them as untrusted (9). Live arrows are recorded in `$TMPDIR/bigarrow/\u003cpid\u003e.json`, sign text included, while shown, and `--json` reports how each ended. No persistent log (6). No SECURITY.md, security.txt, bug bounty or advisories. The main branch is protected against force pushes and deletion, and the release binary is signed ad hoc and not notarised (4).",
            "transparency": "MIT in LICENSE and in the Homebrew formula, with the bundled Feather icons' MIT licence in THIRD_PARTY_NOTICES.md (30). No privacy policy. The README says there is no daemon, account or telemetry, and the source we read has no network code, which agrees. Sign text, which can hold a value to paste, sits in a per-user temporary file while the arrow is shown, which the README does not mention (15). No deprecation policy. Removed and renamed flags are named in the dated changelog (4). No telemetry to disclose, and the README says so. Nothing is sent, so there is nothing to opt out of (16)."
          },
          "sources": [
            {
              "what": "repository README, LICENSE and Package.swift",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen",
              "seen": "2026-10-15"
            },
            {
              "what": "changelog, v0.1.0 on 8 October to v0.4.6 on 12 October 2026",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/CHANGELOG.md",
              "seen": "2026-10-15"
            },
            {
              "what": "git tags and commit history (161 commits from 8 October 2026)",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/tags",
              "seen": "2026-10-15"
            },
            {
              "what": "GitHub releases",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/releases",
              "seen": "2026-10-15"
            },
            {
              "what": "skill SKILL.md",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/skill/big-arrow/SKILL.md",
              "seen": "2026-10-15"
            },
            {
              "what": "skill reference.md",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/skill/big-arrow/reference.md",
              "seen": "2026-10-15"
            },
            {
              "what": "decision on an MCP server (not now)",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/docs/decisions/2026-10-08-T30-mcp-server.md",
              "seen": "2026-10-15"
            },
            {
              "what": "Hacker News feedback triage",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/docs/feedback/2026-10-09-hacker-news.md",
              "seen": "2026-10-15"
            },
            {
              "what": "CI workflow",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/.github/workflows/ci.yml",
              "seen": "2026-10-15"
            },
            {
              "what": "release workflow (ad hoc signing, not notarised)",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/.github/workflows/release.yml",
              "seen": "2026-10-15"
            },
            {
              "what": "CI runs on main",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/actions/workflows/ci.yml?query=branch%3Amain",
              "seen": "2026-10-15"
            },
            {
              "what": "issues",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/issues?q=is%3Aissue",
              "seen": "2026-10-15"
            },
            {
              "what": "issue 70, Windows and Linux ports",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/issues/70",
              "seen": "2026-10-15"
            },
            {
              "what": "pull requests",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/pulls?q=is%3Apr",
              "seen": "2026-10-15"
            },
            {
              "what": "error and exit code contract",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/Sources/BigArrowCore/BigArrowError.swift",
              "seen": "2026-10-15"
            },
            {
              "what": "live-arrow pid files",
              "url": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/Sources/BigArrowCore/PidRegistry.swift",
              "seen": "2026-10-15"
            },
            {
              "what": "Homebrew formula",
              "url": "https://github.com/franzenzenhofer/homebrew-tap/blob/main/Formula/bigarrow.rb",
              "seen": "2026-10-15"
            },
            {
              "what": "maintainer's GitHub profile",
              "url": "https://github.com/franzenzenhofer",
              "seen": "2026-10-15"
            }
          ],
          "openQuestions": [
            "Judgement call. Listed in human-in-the-loop, not agent-harnesses, because its job is handing a step to a person, and it does not run an agent loop. It is the category's first local listing, and it collects no answer the way the hosted services do, so `hitl.approve`, `hitl.channels` and `hitl.audit` are left out. `hitl.ask` is kept for its copy buttons and `--until-click`, which tell the agent the person acted.",
            "Slug kept as `bigarrow`, the command and Homebrew name. The repository is named big-arrow-on-the-screen, and the Codex display name is Big Arrow.",
            "The lead was right. The first commit and v0.1.0 are both 8 October 2026, so `firstReleased` is that date. The project was seven days old when checked.",
            "We did not install or run the tool. Every claim about behaviour comes from the source, the README, the skill, the changelog and the Homebrew formula.",
            "unchecked: GitHub API data (repository creation date, full CI run list, issue timelines), because unauthenticated API requests were rate-limited. The HTML pages were read instead.",
            "The README's \"Starred by\" section lists companies and universities from stargazers' public profiles. It names no person and claims no endorsement, so it was not treated as a misleading claim."
          ]
        },
        "negative": 0,
        "verdict": "An agent can show a person which control to click, with a labelled arrow that needs no permission to draw, never takes focus and always removes itself. The tool is a week old at version 0.4.6, runs only on macOS, reports no answer beyond how an arrow ended, and has no security policy.",
        "bestFor": "An agent on a person's Mac that reaches a step only the person may do, such as a permission prompt, 2FA code or payment, and needs to show where.",
        "strengths": [
          "Drawing needs no macOS permission, and the overlay never takes keyboard focus, which integration tests on the real window server check",
          "Every arrow ends on a time limit, when its agent process exits, on `stop`, or on a click, so none outlives the session by default",
          "Exit codes 0, 2, 3 and 4 and `--json` on every command, and a target-not-found error lists what exists",
          "No network code, telemetry or account. The only dependency is Apple's swift-argument-parser",
          "105 test functions, and the last 25 CI runs on main passed as of 15 October 2026"
        ],
        "weaknesses": [
          "First commit 8 October 2026 and version 0.4.6, with flags removed or renamed between minor versions",
          "macOS 14 or later only. Windows and Linux exist only as third-party ports",
          "It shows where to act but does not collect an answer. The agent learns only how the arrow ended",
          "No SECURITY.md or disclosure route, and the release binary is signed ad hoc, not notarised",
          "Two outside issues opened on 12 and 13 October 2026 had no maintainer reply by 15 October"
        ],
        "agentNotes": [
          "Open the exact System Settings pane or URL first, then point at the one control left for the person",
          "Write the sign as a full sentence that names the action and, for approvals or payments, what the click does",
          "Pass `--app` or `--window` for any target inside an app, so it is raised and the arrow hides while covered",
          "On exit 4, run `bigarrow doctor` and ask the person to grant Accessibility to the app running your shell, not to bigarrow",
          "Call `bigarrow stop` once the step is done, and add `bigarrow stop --hook` as a Claude Code UserPromptSubmit hook"
        ],
        "metrics": {
          "kind": "local",
          "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": 70.7
          }
        ],
        "editorialScores": {
          "ergonomics": 77,
          "maintenance": 70,
          "payments": 60,
          "reliability": 75,
          "schema": 78,
          "security": 67,
          "transparency": 65
        },
        "provenanceScore": 53
      },
      "connect": {
        "install": "brew install franzenzenhofer/tap/bigarrow \u0026\u0026 bigarrow install-skill",
        "headless": {
          "check": "bigarrow doctor --json",
          "point": "bigarrow point --element \"Allow\" --app \"System Settings\" --text \"Franz, click Allow\" --json",
          "start": "bigarrow start --window \"Safari:Inbox\" --text \"This window\"",
          "stop": "bigarrow stop"
        }
      },
      "letme": {
        "capability": "https://letme.dev/hitl.handoff",
        "tool": "https://letme.dev/bigarrow"
      },
      "notable": [
        "v0.1.0 was tagged on 8 October 2026, the day of the first commit, and v0.4.6 on 12 October 2026, thirteen tags in five days (https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/CHANGELOG.md)",
        "It never clicks, types or captures the screen. It draws a click-through, non-activating overlay and the person acts (https://github.com/franzenzenhofer/big-arrow-on-the-screen#readme)",
        "Every arrow ends by itself, after 8 seconds for `point` and 300 for `start`, when the agent process that drew it exits, on `bigarrow stop`, or when the person clicks the sign (https://github.com/franzenzenhofer/big-arrow-on-the-screen#readme)",
        "`{{value}}` in the sign text becomes a copy button, added in v0.4.6 on 12 October 2026, so an agent can hand a person a command or code to paste (https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/CHANGELOG.md)",
        "An MCP server was considered and declined on 8 October 2026, because Claude Code and Codex run the CLI through the skill (https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/docs/decisions/2026-10-08-T30-mcp-server.md)",
        "The Hacker News thread of 9 October 2026 was triaged into tickets, and v0.4.3 shipped the fixes the same day (https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/docs/feedback/2026-10-09-hacker-news.md)"
      ],
      "area": "agent-runtime",
      "details": [
        {
          "label": "Surface listed",
          "value": "The `bigarrow` CLI v0.4.6 and its `big-arrow` skill, read from the repository, changelog, skill files and Homebrew formula on 15 October 2026. Nothing was installed or run"
        },
        {
          "label": "Commands",
          "value": "`point` (shows and waits), `start` (detached, 300 s), `stop` (alias `clear`, with `--all`, `--pid`, `--session`, `--hook`), `elements`, `front`, `doctor`, `install-skill`. `--json`, `--dry-run` and `--png` for offscreen renders"
        },
        {
          "label": "Targets",
          "value": "Screen coordinates (`--at`, `--rect`), the mouse, a window by app and title, a UI element by Accessibility label, or a Peekaboo snapshot ID"
        },
        {
          "label": "Answer to the agent",
          "value": "None beyond how the arrow ended. `--json` reports the dismissal reason and, for copy buttons, how often each was copied. `--until-click` ends when the person clicks the target"
        },
        {
          "label": "Permissions",
          "value": "None to draw. Accessibility for label targeting and `--until-click`, Screen Recording for window titles on macOS 26 and later, granted to the shell's host app"
        },
        {
          "label": "Agents supported",
          "value": "Claude Code (`~/.claude/skills`) and Codex (`~/.agents/skills`, with `agents/openai.yaml`). Any agent that can run a shell command can call the CLI"
        },
        {
          "label": "Network",
          "value": "No network calls found in the source. Speech uses the system `say` command"
        },
        {
          "label": "Platforms",
          "value": "macOS 14 or later. Building needs Xcode 16. CI runs on macOS 15, and the README says tests also passed on macOS 26 and 27"
        },
        {
          "label": "Releases",
          "value": "13 tags from v0.1.0 on 8 October to v0.4.6 on 12 October 2026, each with a changelog section and a GitHub release"
        },
        {
          "label": "Hacker News",
          "value": "Front page on 9 October 2026, 185 points and 74 comments when the maintainer read it that afternoon, per the repository's feedback note"
        }
      ],
      "provenance": {
        "legalEntity": "Franz Enzenhofer (individual, Vienna)",
        "domain": "",
        "domainRegistered": "",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-10-15",
        "notes": [
          "The project has no website. The licence reads Copyright (c) 2026 Franz Enzenhofer. His GitHub account (created 2010) gives Vienna and links fullstackoptimization.com, and commits come from addresses at that domain.",
          "15 of 161 commits are by Arthur Ficial, with an address at the same domain, the account behind the merged README and guide pull requests.",
          "No terms, privacy policy, SECURITY.md or security.txt. The README says the tool has no account and no telemetry.",
          "The software runs on the owner's Mac, so there is no vendor endpoint or status page to check."
        ],
        "score": 53,
        "checks": [
          {
            "check": "Legal entity named",
            "value": "Franz Enzenhofer (individual, Vienna)",
            "points": 20,
            "max": 20,
            "state": "ok"
          },
          {
            "check": "Domain age",
            "value": ", no registry record we could read",
            "points": 0,
            "max": 15,
            "state": "no"
          },
          {
            "check": "Endpoint on the vendor's domain",
            "value": "no hosted endpoint",
            "points": 0,
            "max": 0,
            "state": "na"
          },
          {
            "check": "Terms of service",
            "value": "nothing hosted, so the MIT licence stands in",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "Privacy policy",
            "value": "nothing hosted, not scored",
            "points": 0,
            "max": 0,
            "state": "na"
          },
          {
            "check": "Status page",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          },
          {
            "check": "Changelog",
            "value": "published",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "security.txt",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          }
        ]
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/bigarrow.json"
    },
    "verify": {
      "accepts": "a page under github.com/franzenzenhofer, or the README of github.com/franzenzenhofer/big-arrow-on-the-screen",
      "badgeUrl": "https://www.anchorterminal.com/badges/bigarrow.svg",
      "body": {
        "slug": "bigarrow",
        "url": "the page with the badge or the link"
      },
      "docs": "https://www.anchorterminal.com/builders/#verify",
      "effect": "none, it never changes a grade, rank or review",
      "endpoint": "https://www.anchorterminal.com/api/v1/verify",
      "listingUrl": "https://www.anchorterminal.com/tools/bigarrow",
      "mcpTool": "verify_listing",
      "recheck": "weekly; two failed checks in a row and it lapses, a later pass restores it",
      "snippets": {
        "html": "\u003ca href=\"https://www.anchorterminal.com/tools/bigarrow\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/bigarrow.svg\" alt=\"Big Arrow on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e",
        "markdown": "[![Big Arrow on Anchor Terminal](https://www.anchorterminal.com/badges/bigarrow.svg)](https://www.anchorterminal.com/tools/bigarrow)",
        "link": "\u003ca href=\"https://www.anchorterminal.com/tools/bigarrow\"\u003eBig Arrow on Anchor Terminal\u003c/a\u003e"
      }
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/tools/bigarrow",
    "json": "https://www.anchorterminal.com/tools/bigarrow.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/tools/bigarrow.md",
    "slim": "https://www.anchorterminal.com/tools/bigarrow.min.md"
  },
  "markdown": "## Overview\n\n**Grade BB · 70.7/100 · rank #151 of 1094 · #4 in Human approval \u0026 handoff · agent-ready · confidence medium**\n\n\n## Assessment\n\nAn agent can show a person which control to click, with a labelled arrow that needs no permission to draw, never takes focus and always removes itself. The tool is a week old at version 0.4.6, runs only on macOS, reports no answer beyond how an arrow ended, and has no security policy.\n\n## Facts\n\n| Field | Value |\n| --- | --- |\n| Vendor | Franz Enzenhofer (https://github.com/franzenzenhofer/big-arrow-on-the-screen) |\n| Kind | SDK + MCP |\n| Category | Human approval \u0026 handoff (https://www.anchorterminal.com/categories/human-in-the-loop) |\n| Auth | None · No account, key or network access. Drawing needs no macOS permission. Pointing at a UI element by label (`--element`, `elements`, `--until-click`, `--app App:title`) needs Accessibility, and `--window App:title` needs Screen Recording, both granted to the app that runs the shell (Terminal, Ghostty, VS Code), never to bigarrow itself. |\n| Pricing | Free (Free · OSS) · Free under MIT with nothing to buy. Installed from the author's Homebrew tap, which builds from source, or as an ad hoc signed universal binary from GitHub Releases. |\n| x402 | No · No x402, MPP or L402 in the source, the README or the skill (checked 2026-10-15). The tool has no paid tier and makes no network calls. |\n| Licence | MIT |\n| Source | https://github.com/franzenzenhofer/big-arrow-on-the-screen |\n| Docs | https://github.com/franzenzenhofer/big-arrow-on-the-screen#readme |\n| llms.txt | not found |\n| Last release | 2026-10-12 |\n| GitHub stars | 747 (as of 2026-10-15) |\n| Surface listed | The `bigarrow` CLI v0.4.6 and its `big-arrow` skill, read from the repository, changelog, skill files and Homebrew formula on 15 October 2026. Nothing was installed or run |\n| Commands | `point` (shows and waits), `start` (detached, 300 s), `stop` (alias `clear`, with `--all`, `--pid`, `--session`, `--hook`), `elements`, `front`, `doctor`, `install-skill`. `--json`, `--dry-run` and `--png` for offscreen renders |\n| Targets | Screen coordinates (`--at`, `--rect`), the mouse, a window by app and title, a UI element by Accessibility label, or a Peekaboo snapshot ID |\n| Answer to the agent | None beyond how the arrow ended. `--json` reports the dismissal reason and, for copy buttons, how often each was copied. `--until-click` ends when the person clicks the target |\n| Permissions | None to draw. Accessibility for label targeting and `--until-click`, Screen Recording for window titles on macOS 26 and later, granted to the shell's host app |\n| Agents supported | Claude Code (`~/.claude/skills`) and Codex (`~/.agents/skills`, with `agents/openai.yaml`). Any agent that can run a shell command can call the CLI |\n| Network | No network calls found in the source. Speech uses the system `say` command |\n| Platforms | macOS 14 or later. Building needs Xcode 16. CI runs on macOS 15, and the README says tests also passed on macOS 26 and 27 |\n| Releases | 13 tags from v0.1.0 on 8 October to v0.4.6 on 12 October 2026, each with a changelog section and a GitHub release |\n| Hacker News | Front page on 9 October 2026, 185 points and 74 comments when the maintainer read it that afternoon, per the repository's feedback note |\n| Capabilities | hitl.handoff, hitl.ask |\n| Tags | open-source, local, free, no-card, mit, macos, swift, cli, agent-skill, json-output, pre-1.0, new |\n| JSON | https://www.anchorterminal.com/api/v1/tools/bigarrow.json |\n\n## Score breakdown (methodology v0.4, October 2026 research run)\n\nAssessed 2026-10-15 from public evidence against the published checklist (https://www.anchorterminal.com/benchmark/#checklist). Confidence: medium. Performance and Task success pending (no score, not in the total); the total is Σ(score × weight) ÷ 80 over the 7 assessed categories. \"This run\" is each category's share of the 100 points.\n\n| Category | Weight | This run | Score (0–100) | Points |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% | 20 | 75 | 15.0 |\n| Performance | 10% | pending | pending | n/a |\n| Schema \u0026 documentation | 13% | 16.2 | 78 | 12.7 |\n| Agent ergonomics | 13% | 16.2 | 77 | 12.5 |\n| Security \u0026 auth | 14% | 17.5 | 67 | 11.7 |\n| Payments \u0026 pricing | 10% | 12.5 | 60 | 7.5 |\n| Task success | 10% | pending | pending | n/a |\n| Maintenance \u0026 community | 7% | 8.8 | 70 | 6.1 |\n| Transparency \u0026 trust (editorial 65, provenance 53) | 7% | 8.8 | 59 | 5.2 |\n| Negative events | up to −15 | up to −15 | none recorded | 0 |\n| **Total** | | | | **70.7 → BB** |\n\n### Why each score\n\n- Reliability 75: Read with the local-software lines, since the owner runs the binary. The project is seven days old (first commit 8 October 2026). Installs from the author's Homebrew tap, which builds v0.4.6 from the tagged source, or as an ad hoc signed universal binary on GitHub Releases, with macOS 14 and Xcode 16 stated (20). CI runs SwiftLint in strict mode, a release build and `swift test` with the window-server tests switched on, and the last 25 runs on main passed as of 15 October 2026 (25). Two open issues, a request for Windows and Linux and a note of thanks, and no open bug. The one outside bug report, a box drifting while it pulsed, was fixed with a regression test in v0.4.3 the day it arrived. A week of history is thin evidence (20). Keep a Changelog and semantic version tags, but flags removed or replaced in 0.2.0 and 0.3.0 (`--raise`, `--shadow`) are listed under Changed, not marked as breaking (10). Version 0.4.6, not 1.0 and not declared stable (0).\n- Performance: Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes.\n- Schema \u0026 documentation 78: Graded on the CLI and its skill. Every command takes `--json`, and exit codes 0, 2, 3 and 4 are a stated contract, but no JSON Schema for the output is published and inputs are command flags (10 of 25). The skill is Markdown in the Agent Skills format written for agents, with a 182-token description, a 1,528-token SKILL.md and a 1,118-token reference loaded on demand, per the README's counts (10). The skill says when to use it, including a mandatory trigger for time-critical steps, and when not to, such as never walking a person through menus and skipping the close button unless asked (18). Flags are typed by swift-argument-parser with value lists for shape, style, size, border and colour presets, and the formula's test checks that an unknown size exits 2. The sign text is free text by design (12). The README and skill carry many worked commands, and exit codes and the permission errors are documented, with a not-found error that lists what exists (13). Semantic versions and a dated changelog (15).\n- Agent ergonomics 77: A CLI adds no tool definitions to context, and only the skill's 182-token description is always loaded. Results are a single small JSON object (22 of 25). `elements --app X --match` filters what label targeting can match, and there is nothing else to page (14 of 20). Exit codes separate bad input, target not found and missing permission, and the permission error names the host app and the settings pane, with `doctor` to check (18). `--dry-run` resolves and plans without drawing, every arrow ends by itself and `stop` can target one pid, one session or all. A repeated `start` draws a second arrow rather than replacing the first (14 of 20). Sensible defaults (8 seconds for `point`, 300 for `start`, raise the target) and one required option, the target. One CLI and no SDK in a second language (9 of 15).\n- Security \u0026 auth 67: No credential model to grade, since the tool holds no secret and makes no network call, so read with the framework lines as for other local agent tools. 30 for what leaves the machine by default, 20 for least privilege and approvals, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. No network code, telemetry or account found in the source, and the only dependency is swift-argument-parser (30). It never clicks, types or captures, drawing needs no permission, and Accessibility is needed only for label targeting. Boxes and rings are outlines, the sign keeps clear of its target, and a click on the sign removes it, each checked by a test per the README. Raising the target app is on by default with `--no-raise` to opt out (18). The skill tells the agent to put on the sign what an approval, payment or deletion does. Element labels read from other apps return as text the agent reads, with no guidance on treating them as untrusted (9). Live arrows are recorded in `$TMPDIR/bigarrow/\u003cpid\u003e.json`, sign text included, while shown, and `--json` reports how each ended. No persistent log (6). No SECURITY.md, security.txt, bug bounty or advisories. The main branch is protected against force pushes and deletion, and the release binary is signed ad hoc and not notarised (4).\n- Payments \u0026 pricing 60: No payment protocol (0). Read with the self-hosted rule. Free under MIT with nothing to buy (20). No card or account (20). Installs with one Homebrew command and needs no signup (20).\n- Task success: Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored.\n- Maintenance \u0026 community 70: v0.4.6 on 12 October 2026 (30). Thirteen tagged releases between 8 and 12 October 2026 (20). The Hacker News thread was triaged into ten tickets, closed the same day, and two outside pull requests were declined with reasons in the triage note. Two outside issues opened on 12 and 13 October had no maintainer reply by 15 October, and other contributors' pull requests come from one account at the author's domain (12 of 25). Not an MCP server and no SDK, and the skill is not in a registry (0). One dependency, current Swift 6 tooling and CI green on main. No Dependabot configuration found (8).\n- Transparency \u0026 trust 59: MIT in LICENSE and in the Homebrew formula, with the bundled Feather icons' MIT licence in THIRD_PARTY_NOTICES.md (30). No privacy policy. The README says there is no daemon, account or telemetry, and the source we read has no network code, which agrees. Sign text, which can hold a value to paste, sits in a per-user temporary file while the arrow is shown, which the README does not mention (15). No deprecation policy. Removed and renamed flags are named in the dated changelog (4). No telemetry to disclose, and the README says so. Nothing is sent, so there is nothing to opt out of (16).\n\nFix list for a coding agent, everything this grade says the listing lacks, the biggest gain first (16 items): https://www.anchorterminal.com/fixes/bigarrow.md (JSON https://www.anchorterminal.com/fixes/bigarrow.json)\n\n### What we couldn't check\n\n- Judgement call. Listed in human-in-the-loop, not agent-harnesses, because its job is handing a step to a person, and it does not run an agent loop. It is the category's first local listing, and it collects no answer the way the hosted services do, so `hitl.approve`, `hitl.channels` and `hitl.audit` are left out. `hitl.ask` is kept for its copy buttons and `--until-click`, which tell the agent the person acted.\n- Slug kept as `bigarrow`, the command and Homebrew name. The repository is named big-arrow-on-the-screen, and the Codex display name is Big Arrow.\n- The lead was right. The first commit and v0.1.0 are both 8 October 2026, so `firstReleased` is that date. The project was seven days old when checked.\n- We did not install or run the tool. Every claim about behaviour comes from the source, the README, the skill, the changelog and the Homebrew formula.\n- unchecked: GitHub API data (repository creation date, full CI run list, issue timelines), because unauthenticated API requests were rate-limited. The HTML pages were read instead.\n- The README's \"Starred by\" section lists companies and universities from stargazers' public profiles. It names no person and claims no endorsement, so it was not treated as a misleading claim.\n\n### Sources\n\n- repository README, LICENSE and Package.swift: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen\u003e (seen 2026-10-15)\n- changelog, v0.1.0 on 8 October to v0.4.6 on 12 October 2026: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/CHANGELOG.md\u003e (seen 2026-10-15)\n- git tags and commit history (161 commits from 8 October 2026): \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/tags\u003e (seen 2026-10-15)\n- GitHub releases: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/releases\u003e (seen 2026-10-15)\n- skill SKILL.md: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/skill/big-arrow/SKILL.md\u003e (seen 2026-10-15)\n- skill reference.md: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/skill/big-arrow/reference.md\u003e (seen 2026-10-15)\n- decision on an MCP server (not now): \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/docs/decisions/2026-10-08-T30-mcp-server.md\u003e (seen 2026-10-15)\n- Hacker News feedback triage: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/docs/feedback/2026-10-09-hacker-news.md\u003e (seen 2026-10-15)\n- CI workflow: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/.github/workflows/ci.yml\u003e (seen 2026-10-15)\n- release workflow (ad hoc signing, not notarised): \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/.github/workflows/release.yml\u003e (seen 2026-10-15)\n- CI runs on main: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/actions/workflows/ci.yml?query=branch%3Amain\u003e (seen 2026-10-15)\n- issues: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/issues?q=is%3Aissue\u003e (seen 2026-10-15)\n- issue 70, Windows and Linux ports: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/issues/70\u003e (seen 2026-10-15)\n- pull requests: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/pulls?q=is%3Apr\u003e (seen 2026-10-15)\n- error and exit code contract: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/Sources/BigArrowCore/BigArrowError.swift\u003e (seen 2026-10-15)\n- live-arrow pid files: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/Sources/BigArrowCore/PidRegistry.swift\u003e (seen 2026-10-15)\n- Homebrew formula: \u003chttps://github.com/franzenzenhofer/homebrew-tap/blob/main/Formula/bigarrow.rb\u003e (seen 2026-10-15)\n- maintainer's GitHub profile: \u003chttps://github.com/franzenzenhofer\u003e (seen 2026-10-15)\n\n## Who's behind it (provenance 53/100, checked 2026-10-15)\n\n| Check | Finding | Points |\n| --- | --- | --- |\n| Legal entity named | Franz Enzenhofer (individual, Vienna) | 20/20 |\n| Domain age | , no registry record we could read | 0/15 |\n| Endpoint on the vendor's domain | no hosted endpoint | n/a |\n| Terms of service | nothing hosted, so the MIT licence stands in | 10/10 |\n| Privacy policy | nothing hosted, not scored | n/a |\n| Status page | not found | 0/10 |\n| Changelog | published | 10/10 |\n| security.txt | not found | 0/10 |\n\nThe project has no website. The licence reads Copyright (c) 2026 Franz Enzenhofer. His GitHub account (created 2010) gives Vienna and links fullstackoptimization.com, and commits come from addresses at that domain.\n\n15 of 161 commits are by Arthur Ficial, with an address at the same domain, the account behind the merged README and guide pull requests.\n\nNo terms, privacy policy, SECURITY.md or security.txt. The README says the tool has no account and no telemetry.\n\nThe software runs on the owner's Mac, so there is no vendor endpoint or status page to check.\n\n### Terms and privacy, as read\n\nA reading by a fixed set of rules, each answered with the vendor's own sentence. Not legal advice.\n\n**Terms of service**. Nothing is hosted by the vendor, so there are no terms of service to read. The MIT licence stands in and the check scores in full.\n\n\n**Privacy policy**. Nothing is hosted by the vendor, so there is no privacy policy to read and the check isn't scored.\n\n\n## Probe metrics\n\nNot measured yet. Our benchmark probes haven't run, so there's no availability, latency or error rate from a run and Performance is pending. Live uptime, where we poll the endpoint, is under Live and doesn't change the score.\n\n## Strengths\n\n- Drawing needs no macOS permission, and the overlay never takes keyboard focus, which integration tests on the real window server check\n- Every arrow ends on a time limit, when its agent process exits, on `stop`, or on a click, so none outlives the session by default\n- Exit codes 0, 2, 3 and 4 and `--json` on every command, and a target-not-found error lists what exists\n- No network code, telemetry or account. The only dependency is Apple's swift-argument-parser\n- 105 test functions, and the last 25 CI runs on main passed as of 15 October 2026\n\n## Weaknesses\n\n- First commit 8 October 2026 and version 0.4.6, with flags removed or renamed between minor versions\n- macOS 14 or later only. Windows and Linux exist only as third-party ports\n- It shows where to act but does not collect an answer. The agent learns only how the arrow ended\n- No SECURITY.md or disclosure route, and the release binary is signed ad hoc, not notarised\n- Two outside issues opened on 12 and 13 October 2026 had no maintainer reply by 15 October\n\n\n\n## Before you call it (notes for agents)\n\n1. Open the exact System Settings pane or URL first, then point at the one control left for the person\n2. Write the sign as a full sentence that names the action and, for approvals or payments, what the click does\n3. Pass `--app` or `--window` for any target inside an app, so it is raised and the arrow hides while covered\n4. On exit 4, run `bigarrow doctor` and ask the person to grant Accessibility to the app running your shell, not to bigarrow\n5. Call `bigarrow stop` once the step is done, and add `bigarrow stop --hook` as a Claude Code UserPromptSubmit hook\n\n## Connect\n\nInstall:\n\n```bash\nbrew install franzenzenhofer/tap/bigarrow \u0026\u0026 bigarrow install-skill\n```\n\nHeadless / CI:\n\n```json\n{\n  \"check\": \"bigarrow doctor --json\",\n  \"point\": \"bigarrow point --element \\\"Allow\\\" --app \\\"System Settings\\\" --text \\\"Franz, click Allow\\\" --json\",\n  \"start\": \"bigarrow start --window \\\"Safari:Inbox\\\" --text \\\"This window\\\"\",\n  \"stop\": \"bigarrow stop\"\n}\n```\n\nThrough letme (picks today, calling later): https://letme.dev/bigarrow (letme picks it for hitl.handoff, the top-graded tool for the job). letme answers with the pick and how to call it direct; calling through letme (one key, the vendor's own price) comes later. How it works: https://www.anchorterminal.com/letme/index.md\n\n## Similar tools\n\nRanked by shared capabilities, then score. Same-category tools with no shared capability key are listed last.\n\n| Tool | Grade | Score | Rank | Shared capabilities | x402 | Markdown |\n| --- | --- | --- | --- | --- | --- | --- |\n| Orkes Conductor Human tasks | C | 54 | 746 | hitl.ask, hitl.handoff | no | https://www.anchorterminal.com/tools/orkes-conductor.md |\n| Temporal | BB | 77.2 | 24 | hitl.ask | no | https://www.anchorterminal.com/tools/temporal.md |\n| Trigger.dev | BB | 74.7 | 70 | hitl.ask | no | https://www.anchorterminal.com/tools/trigger-dev.md |\n| Restate | BB | 73.3 | 94 | hitl.ask | no | https://www.anchorterminal.com/tools/restate.md |\n| Hatchet | B | 68.3 | 236 | hitl.ask | no | https://www.anchorterminal.com/tools/hatchet.md |\n| Inngest | B | 66 | 323 | hitl.ask | no | https://www.anchorterminal.com/tools/inngest.md |\n\n## Panel reviews (0)\n\nReviewed by the Anchor panel (https://www.anchorterminal.com/reviewers/index.md): .\n\nDesk reviews, written from public documentation, pricing, terms, source and status history on 1 October 2026. No calls made. For a desk review, the outcome says whether the reviewer's questions could be answered from public material: success, partial or failure. How reviews work: https://www.anchorterminal.com/reviews/how-it-works.md\n\n## Notable\n\n- v0.1.0 was tagged on 8 October 2026, the day of the first commit, and v0.4.6 on 12 October 2026, thirteen tags in five days (source: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/CHANGELOG.md\u003e)\n- It never clicks, types or captures the screen. It draws a click-through, non-activating overlay and the person acts (source: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen#readme\u003e)\n- Every arrow ends by itself, after 8 seconds for `point` and 300 for `start`, when the agent process that drew it exits, on `bigarrow stop`, or when the person clicks the sign (source: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen#readme\u003e)\n- `{{value}}` in the sign text becomes a copy button, added in v0.4.6 on 12 October 2026, so an agent can hand a person a command or code to paste (source: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/CHANGELOG.md\u003e)\n- An MCP server was considered and declined on 8 October 2026, because Claude Code and Codex run the CLI through the skill (source: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/docs/decisions/2026-10-08-T30-mcp-server.md\u003e)\n- The Hacker News thread of 9 October 2026 was triaged into tickets, and v0.4.3 shipped the fixes the same day (source: \u003chttps://github.com/franzenzenhofer/big-arrow-on-the-screen/blob/main/docs/feedback/2026-10-09-hacker-news.md\u003e)\n\n- #4 of 11 in Best human approval and handoff for AI agents: https://www.anchorterminal.com/best/human-in-the-loop/index.md\n- All 53 human approval comparisons: https://www.anchorterminal.com/compare/human-in-the-loop/index.md\n\n## Compare\n\n- [Big Arrow vs gotoHuman](https://www.anchorterminal.com/compare/bigarrow-vs-gotohuman.md): BB 70.7 vs E 43.6\n- [Big Arrow vs Hatchet](https://www.anchorterminal.com/compare/bigarrow-vs-hatchet.md): BB 70.7 vs B 68.3\n- [Big Arrow vs Inngest](https://www.anchorterminal.com/compare/bigarrow-vs-inngest.md): BB 70.7 vs B 66\n- [Big Arrow vs Pushary](https://www.anchorterminal.com/compare/bigarrow-vs-pushary.md): BB 70.7 vs D 51.4\n- [Big Arrow vs Restate](https://www.anchorterminal.com/compare/bigarrow-vs-restate.md): BB 70.7 vs BB 73.3\n- [Big Arrow vs Temporal](https://www.anchorterminal.com/compare/bigarrow-vs-temporal.md): BB 70.7 vs BB 77.2\n- [Big Arrow vs Trigger.dev](https://www.anchorterminal.com/compare/bigarrow-vs-trigger-dev.md): BB 70.7 vs BB 74.7\n- [Big Arrow vs Orkes Conductor Human tasks](https://www.anchorterminal.com/compare/bigarrow-vs-orkes-conductor.md): BB 70.7 vs C 54\n\n## Verify this listing\n\nFor the vendor. The badge or a plain link to this page verifies the listing, from a page under github.com/franzenzenhofer, or the README of github.com/franzenzenhofer/big-arrow-on-the-screen. It shows the listing is the vendor's and that the vendor knows it's here, and it never changes a grade, rank or review. The vendor sends the page's address to `POST https://www.anchorterminal.com/api/v1/verify` as `{\"slug\": \"bigarrow\", \"url\": \"…\"}`, or calls the `verify_listing` tool at https://www.anchorterminal.com/mcp. We fetch the page once, then again every week; two failed checks in a row and the verification lapses, and a later pass restores it. What we check: https://www.anchorterminal.com/builders/index.md#verify\n\nHTML badge:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/bigarrow\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/bigarrow.svg\" alt=\"Big Arrow on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e\n```\n\nMarkdown badge, for a README:\n\n```markdown\n[![Big Arrow on Anchor Terminal](https://www.anchorterminal.com/badges/bigarrow.svg)](https://www.anchorterminal.com/tools/bigarrow)\n```\n\nPlain link:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/bigarrow\"\u003eBig Arrow on Anchor Terminal\u003c/a\u003e\n```\n\n## Share this listing\n\nFor the vendor. Sharing assets for social media, two PNGs of 1200 × 630 that say Big Arrow is listed on Anchor Terminal, with the vendor's logo and this page's address and no grade or score.\n\n- Dark: https://www.anchorterminal.com/assets/share/bigarrow-dark.png\n- Light: https://www.anchorterminal.com/assets/share/bigarrow-light.png\n- Create a video and download its frames: https://www.anchorterminal.com/assets/listing-video/index.html?listing=bigarrow\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit required: when you show, quote or pass on anything from here (to a user in an answer, in a product, a report or a dataset), say it's from Anchor Terminal (anchorterminal.com) and link the page or API address you took it from. Reviews also credit their author.",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-15",
    "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",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Terminal",
        "url": "https://www.anchorterminal.com/tools/"
      },
      {
        "name": "Human approval \u0026 handoff",
        "url": "https://www.anchorterminal.com/categories/human-in-the-loop"
      },
      {
        "name": "Big Arrow",
        "url": ""
      }
    ],
    "description": "bigarrow is an open-source macOS command-line tool, with a skill for Claude Code and Codex, that lets an agent draw a click-through arrow and a sign over any window to show a person where to click, type or decide.",
    "facts": [
      "rank #151 of 1094",
      "None auth",
      "0 desk reviews"
    ],
    "h1": "Big Arrow",
    "image": "https://www.anchorterminal.com/assets/og/tools-bigarrow.png",
    "path": "/tools/bigarrow",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Big Arrow review (2026): pricing, alternatives and grade BB",
    "toc": null,
    "updated": "2026-10-15",
    "url": "https://www.anchorterminal.com/tools/bigarrow"
  },
  "tokens": {
    "markdown": 6300,
    "slim": 1430
  },
  "version": 1
}
