Mac Apps
trueshot
What It Does
Section titled “What It Does”Tiny menu bar Mac app that captures what is genuinely on screen — even transient UI that other screenshot tools dismiss the moment they activate.
The native Cmd+Shift+5 HUD steals focus. The instant you trigger it, Spotlight collapses, dropdowns close, autocomplete vanishes, hover popovers disappear. So you cannot screenshot the thing you were actually looking at. TrueShot invokes from the menu bar — clicking a menu bar item does not steal focus from Spotlight or other transient UI, so capture happens with the screen genuinely intact.
Four capture modes, source-grouped:
- Capture Region — drag a marquee anywhere on screen → clipboard or Desktop
- Capture Entire Screen — full display → clipboard or Desktop
Each capture plays the Tink sound and flashes the menu bar icon green or red. Desktop saves show a macOS-native-style thumbnail floater in the bottom-right (180pt wide, 5-second dismiss, click to open in Preview).
When To Use
Section titled “When To Use”- Screenshotting Spotlight results. Native screenshot tools dismiss Spotlight. TrueShot does not.
- Screenshotting menus, dropdowns, autocomplete. Same problem, same fix.
- Screen Sharing into another Mac. Works during a screen-share session, captures the remote screen content.
- Any time you need the screen captured exactly as you see it, not as it looks after the screenshot tool activates.
How It Works
Section titled “How It Works”Apple’s ScreenCaptureKit (SCShareableContent.displays) grabs the full display, then SCScreenshotManager.captureImage renders to a CGImage. For region capture, the full-display image is handed to a custom SelectionOverlayWindow for crosshair drag-select; the cropped region is the result.
Menu-bar invocation is the key. Other screenshot apps use a global hotkey, which fires a HUD and breaks the screen state. The menu bar invocation is what makes TrueShot’s promise true.
Where It Lives
Section titled “Where It Lives”- Repo:
~/apps/trueshot/ - Project:
TrueShot.xcodeproj - Tech: AppKit menu bar app (
NSStatusItem),ScreenCaptureKitfor the capture,UniformTypeIdentifiersfor PNG export,CGImageDestinationfor clipboard/file PNG conversion. - Bundle ID:
com.jameshurst.trueshot - Signing: Developer ID Application: Oliver Hurst (WG8568VB25)
- Install location:
/Applications/TrueShot.app
Build And Run
Section titled “Build And Run”ssh mbp 'bash ~/apps/trueshot/scripts/build.sh'# Or from Studio: bash ~/apps/cc/bin/run-terminal-over-ssh.sh mbp ~/apps/trueshot/scripts/build.sh --keep-openThe script pulls, builds via xcodebuild, codesigns with the Developer ID cert, installs to /Applications/TrueShot.app, mirrors to ./build/ for in-repo dev reference, and relaunches.
| Item | Action |
|---|---|
| Capture Region to Clipboard | Drag a region anywhere on screen → clipboard |
| Capture Region to Desktop | Same → floater → save (default ~/Desktop) |
| Capture Entire Screen to Clipboard | Full display → clipboard |
| Capture Entire Screen to Desktop | Same → floater → save |
Save Location: <path> ▸ | Choose Folder, Reset to Desktop, Reveal in Finder |
| Quit TrueShot | ⌘Q |
Diagnostics
Section titled “Diagnostics”~/Library/Logs/TrueShot.log — timestamped event log written by logEvent(_:). Tail it after a capture to confirm what happened (resolution, byte count, success/failure). NSLog to the unified log was tried first and abandoned — it never showed up in log show reliably.
History
Section titled “History”Forked clean from remote-screenshot (Build 17, tag v17-final-as-remote-shot) on 2026-05-23, after testing confirmed the full-screen capture path covered every Screen Sharing case as well — so the original Screen Sharing-specific code was deleted and the app generalized. The “remote” framing was retired in favor of “true” — captures what is actually on screen, no matter what.
Known Gaps / Quirks
Section titled “Known Gaps / Quirks”- Requires Screen Recording permission in System Settings → Privacy & Security. First launch will prompt.
- TCC keys permission off the codesigning identity — that is why TrueShot is signed with the Developer ID Application cert (stable identity) rather than an Apple Development cert (rotates).
- App is
LSUIElement = trueso it is menu-bar-only, no Dock icon. To quit, use the menu’s Quit item orpkill TrueShot.