Skip to content

Beacon

Last updated: 2026-09-17

Beacon is bug, feature-request and feedback reporting for macOS 26 and iOS 26 apps. A tester presses a button in your app, and the report arrives with the app version, build, device and, from the in-app sheet, the app's log, screenshots and a screen recording. A Claude session then works each report by a written triage policy: it reproduces it, fixes what is small, and explains the rest.

Documentation site: up-coast.github.io/beacon

Install

  1. In Claude Code, add the marketplace and install the plugin:
/plugin marketplace add Up-Coast/beacon
/plugin install beacon@up-coast
  1. Ask Claude to "set up Beacon in my app".

The plugin adds two skills: beacon-setup puts Beacon into your app and sets up the pickup, and beacon-triage works the reports. It carries the whole repository, so nothing else needs cloning.

To add the Swift package yourself, or work from a clone, see Getting Beacon.

Adopt it

Adopting Beacon is three things: configure it once at launch, put a button in a view, and run the indexer in your build.

import Beacon

Beacon.configure(BeaconConfiguration(
    app: AppIdentity.mainBundle(),
    organizationName: "the Harbour team",
    currentReporter: { Reporter(accountID: "tester@example.com") },
    transport: LocalBundleTransport(folderProvider: { nil })))
BeaconReportButton()
swift run beacon-index --source . --output Resources/BeaconIndex.json --app-name Harbour

The Quickstart has the full steps. The two setup paths, Claude-only and GitHub, are compared in the documentation index.

What is in this repository

Path What it is
Sources/ The Swift package: BeaconCore, BeaconDiagnostics, BeaconIntelligence, BeaconCapture, BeaconGitHub, BeaconUI, the Beacon library your app imports, and the beacon-index command-line tool.
Tests/ The package's tests.
Inbox/ The Beacon page: a Claude artifact testers report through, with the board. See Inbox/README.md.
Triage/ The triage policy and the pickup prompt.
Scripts/ beacon-adopt-github.sh, which puts the GitHub pieces into an app's repository, and beacon-labels.sh, which creates the labels.
.claude/skills/ The beacon-setup and beacon-triage skills.
.claude-plugin/ The plugin manifest and marketplace entry.
.github/ Beacon's CI, the triage and reproduce workflow templates, and the issue templates.
Examples/BeaconExample/ A small app to try the in-app sheet on iPhone, iPad and Mac. See its README.
docs/ The documentation for people adding Beacon to an app.
internal/ The documentation for people changing Beacon.

Read more

Page Read it when
Quickstart You want the button in your app now.
Setup: the Claude-only path You have a Claude organization and do not use GitHub.
Setup: the GitHub path You track work in GitHub and want issues and the in-app sheet.
How it works You want to know what happens after a tester presses send.
The board You want to see every report and its outcome.
What happens to a report You want to know what Claude does with a report, and what it never does.
What is collected You need to tell testers what a report contains.
Options You want every configuration field, transport and flag.
For testers You want the page to send to your testers.
FAQ You want short answers to common questions.
Triage policy You want the full rules the triage follows.
Pickup prompt You are setting up the session that picks reports up.
Developer guide You are changing Beacon itself.
Status You want to know what is proven and what is not yet.
Cloud reproduction You want to reproduce reports on GitHub-hosted macOS runners.
Contributing You want to send a change.

Who makes Beacon, and why it is free

I'm Abbey Jackson. I spent over a decade in tech as an iOS engineer and then a product manager, at Intel, Mastercard and Rivian, where I hold a patent (US12115931B2) for the architecture behind how the Rivian app talks to the vehicle.

Beacon is free because most of what I do is free. My main work is teaching app strategy: how to decide what to build and how to lead an app's development, which is the part nobody teaches engineers. Mentoring tends to stop when you make senior, and then you are expected to already know the product side.

From Passion to Product is my free six-week live course. It covers user research, validation, competitive work, scoping and launch planning, and it ends with a written strategy you could hand to anyone. It is run by Up Coast, my social venture, and it is free because I think the ability to build things people want should not depend on already being inside the tech industry.

There are no dates for the next cohort yet. The waitlist and the course details are at upcoastbuilders.ca.

Licence

Beacon is released under the MIT licence. See LICENSE.