Skip to content
HNHacker News·

Show HN: Let your AI agents paint big arrows, boxes and text on your screen

AI summary

Big-arrow-on-the-screen (bigarrow) is an MIT-licensed macOS command-line tool designed for AI agents to draw arrows and signs on top of windows without taking focus. It supports various targeting options like --at X,Y, --rect X,Y,W,H, --mouse, --window App[:title], and --element Label. Arrows can be set with a --duration, and removed with bigarrow stop. The tool ensures clicks pass through to the underlying app and keyboard focus remains unchanged, appearing above normal windows at the screen-saver window level.

Time & source

Times shown in UTC

Display time zone: UTC

Local time zone unavailable; showing UTC.

PublishedOffset at this time: UTC+0Oct 9, 2026, 11:03 UTC

IngestedOffset at this time: UTC+0Oct 9, 2026, 12:00 UTC

Published
Oct 9, 2026, 11:03
Ingested
Oct 9, 2026, 12:00
Source type
Dev community
Tier
Community
Source status
Healthy

Tier is a per-source editorial setting, not a per-item score.

Breakout verdict
Basis
Running about 2.3× the median of this source's recent listed items
Metric comparison
209 vs median 90 (20 baseline samples)
Detected
10/09, 15:00

big-arrow-on-the-screen (bigarrow) is a macOS command-line tool, plus a skill for Claude Code and Codex, that draws an arrow and a sign on top of every window. Clicks go through to the app below, your keyboard focus stays where it is, and the arrow removes itself. MIT licensed.

Your AI agent can refactor a monorepo, write a migration and explain monads, but when it needs you to click one button it prints "please click Allow in the dialog" into a terminal you are not looking at. bigarrow gives it a finger.

bigarrow point --element " Allow " --app " System Settings " --text " Franz, click Allow: Ghostty may control your Mac "

The arrow lives in its own transparent window above all other windows, on every display and every Space. Clicks on the target land in the app underneath, and drawing needs no macOS permission at all. It is one Swift binary: no daemon, no menu-bar icon, no account, no telemetry, and, we checked twice, no AI inside. It is an arrow.

What is this actually for?

Fair question. Arrows have existed since roughly the Paleolithic. Here is what changed: software agents now do real work on your Mac, and sooner or later they reach a step only a human may do, or one the human wants to learn to do.

- "Click Allow." macOS permission prompts, OAuth consent screens, "Open with...?" dialogs. The agent can find the button but must not, or cannot, press it for you. It can now point at it.

- "Your turn." 2FA codes, CAPTCHAs, passkeys, a payment confirmation, a signature, a legal checkbox. The things an agent should never click on its own behalf. It points, you decide, it continues.

- "It's this window, not that one." You have 14 Chrome windows. The agent knows which one it means: --window "Google Chrome:Pull request". It even picks the right tab: --app "Google Chrome:Pull request".

- "I need you, and you're making coffee." --say reads the sign aloud. Your Mac will literally call you back to your desk.

- "Show me how." Ask your agent how to do something in Keynote, Blender or System Settings, and it points at each control in turn instead of describing it: start, wait until you acted, stop, next step. Like a product tour, minus the product. A full example: How to allow screen recording on a Mac , every screenshot an arrow an agent drew.

- Helping someone else. Install it on a parent's Mac, and the agent there can show them how to save a document as PDF. Pointing beats "the button at the top, no, the other top".

- Remote help. "No, the other grid icon." Point at it instead of describing it.

- Demos, screencasts, docs. Highlight what matters while recording, or render the arrow straight into a PNG with --png for documentation.

- Debugging coordinates. Not sure your Accessibility, screenshot or Peekaboo coordinates are right? Point at them and look. --dry-run --json tells you where it would point without drawing.

What it is not: a screen annotator for humans, a click bot, or a screenshot tool. It never clicks, types or captures anything. It only points. Deliberately.

Real apps, real use cases

No fake dialogs this time. Real apps on the test Mac (macOS 27), neutral demo content, a fresh browser profile, and the real bigarrow, staged by scripts/real-scenes.sh. Every command below is exactly what ran; the script only adds --no-animation --json for the screenshot.

open " x-apple.systempreferences:com.apple.preference.security?Privacy_Accessibility " bigarrow start --element Terminal_Toggle --app " System Settings " \ --text " Franz, switch this on: Terminal may control your Mac " --from right

Guiding a human through a permission: a deep link opens the exact pane, the arrow finds the one switch, and the sign says what it does. (On macOS 27 the pane is called Device Control and Data Access. Nobody would have found it by the old name.)

bigarrow start --element Animate --app Keynote --role radiobutton --text " 1. Click Animate " --from right bigarrow start --element " Add an Effect " --app Keynote --text " 2. Add an Effect " --from right

Teaching an app: "Where do I add a transition?" Two numbered steps, both on screen, in a toolbar that has given up on words.

bigarrow start --element PDF --role button --app TextEdit \ --text " Mom, click PDF, then Save as PDF " --from bottom

Helping a parent over a screen share, without the twenty minutes of "the little button, bottom left, no, left".

Source·Hacker News·github.com