Backstage — Development skill for Claude Code
Backstage: a macOS menu-bar focus guard.
How to install Backstage
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open iansteitz1-eng/backstage and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Backstage does
Backstage: a macOS menu-bar focus guard. Automation browsers and background agents stay backstage and ask before they appear. Swift, no Mac App Store sandbox. Source is Apache-2.0; the notarized build is sold at voxordo.io/backstage. From InsyncTech.
Alternatives in Development
- Swift Lsp — Swift /plugin install swift-lsp@claude-plugins-official 14k ★
- Vibekit — A simple SDK for safely running Codex, Gemini CLI, and Claude Code in a secure sandbox 1.7k ★
- Sandbox Init — You are the {{tentacleId}} tentacle agent — a specialist responsible for the work domain defined in your vault 1.4k ★
README
Backstage
Your AI agents keep grabbing your screen. Backstage makes them stay backstage.
Anyone running browser automation (Claude, CDP seats, Playwright, agent stacks) knows the moment: a window you did not ask for jumps in front of you, your dictation dies mid-sentence, your typing lands in the wrong app. Backstage is a macOS menu-bar app that ends it. Your agents keep working, in the background, where they belong. Your screen stays yours.
What it does
- Bounces uninvited grabs and puts you back where you were, measured in single-digit milliseconds on the shipped build.
- Knows your browser from your agent's browser, per running process. Your own Chrome is never touched, even though it is the same app.
- Your clicks always win. When you open a guarded app, it opens. Only programmatic grabs get bounced.
- Dictation shield. Engage it and nothing may steal focus at all while you speak.
- Agents can ask permission. A one-line CLI grants a timed on-screen pass, for the login your agent genuinely needs you to type. It expires by itself.
- Storm-proof by design. A misbehaving agent trips a breaker (6 bounces per 60 seconds per app, then a 5-minute pause) instead of turning the guard into its own problem.
- Every decision is logged, locally, in
~/Library/Logs/backstage/decisions.jsonl. - Runs entirely on your machine. No account, no network calls, nothing leaves your Mac.
Why it exists
We built Backstage because it happened to us. Our own agent's browser stole the founder's screen every fifteen minutes, mid-dictation, until the words being dictated were typed into the agent's window instead of the founder's own. We traced the exact line of code that does it, a standard call every browser-automation stack makes, and realized every AI-agent user has this problem.
Install
Build it from source
Requires macOS 13 or newer and Xcode command line tools.
git clone https://github.com/iansteitz1-eng/backstage.git
cd backstage
./build-app.sh
open dist/
Related Skills
Daydream
Daydream — triggered background micro-spark. Runs 3-5 associative hops in a sub-agent while you stay in focus
Claudemon
Live Claude Code usage in your macOS menu bar — download the signed, notarized DMG from Releases. Requires Cla
Background Execution Agent Skill
Agent skill for writing and reviewing Swift background-execution code on Apple platforms: BGTaskScheduler, bac
Fluxa
Essential macOS system controls one click away in your menu bar — plus live Claude & Codex quota tracking with
Aieye
Native macOS menu bar app for Claude Code, Codex, and Claude background agents — unified session list, in-pane
Claude Notch
Approve Claude Code from your Mac's notch. A native SwiftUI menu-bar app that surfaces Claude Code permission
Related Agents
macOS UI Designer
Use this agent when you need to plan, design, or evaluate macOS application user interfaces from a UI/UX persp
macOS Onboarding Reviewer
Mac-side expert who reviews onboarding documentation and install scripts for macOS-specific accuracy, complete
Mac Dev
native swift mac app dev