krz/octosentry

macOS menu bar app to monitor GitHub security alerts github macos menubar security

Commit d2400a4c1f

d2400a4c1f61b0676019f509647d23b09336df78

parent: 9cb9e5ea2a

Unsigned

cmc <hello@cleberg.net> · 2026-08-31 22:44 UTC

Convert README.nfo to README.org (!2)

Section headings become org headings, indented command blocks become
src blocks, and column-aligned content stays in example blocks.

Layout: unified · split

README.nfo deleted −51
@@ -1,51 +0,0 @@
1┌──────────────────────────────────────────────────────────────┐
2│ O C T O S E N T R Y [ KRZ ] krz.sh │
3└──────────────────────────────────────────────────────────────┘
4
5WHAT
6 macos menu bar app. aggregates github security alerts (dependabot,
7 code scanning, secret scanning) across your repos into one
8 severity-ranked feed. deep-links out to github.com to act.
9
10DOES
11 - one feed across all three alert types on a single severity scale
12 - source badge, repo, github severity label, one-line summary, age
13 - click an alert to open it on github.com
14 - errors and unavailable sources shown in the popover, not hidden
15 - add or remove watched repos from the popover; a background poll
16 keeps the feed fresh while closed
17 - sign in with github via device authorization; no password or
18 token typed into the app
19 - no third-party dependencies. swiftui and urlsession.
20
21REQUIRES
22 macos 14 or later. a github account with access to the repos you
23 watch.
24
25USE
26 1. build and run.
27 2. click the shield icon, Sign in with GitHub. you get a short
28 code; Open GitHub, enter it, authorize.
29 3. click the gear to add or remove repos (owner/repo).
30 4. click an alert to open it on github.com.
31
32 an unavailable source usually means that alert type is disabled for
33 the repo or your account lacks permission, not that something broke.
34 device flow grants the security_events scope, which may not cover
35 dependabot alerts on private repos.
36
37BUILD
38 open octosentry.xcodeproj and run the octosentry scheme. targets
39 macos 14, swift 6 strict concurrency, no package dependencies.
40
41CONTRIBUTING
42 - no third-party dependencies. hard constraint.
43 - swift 6 strict concurrency stays on; new code compiles clean.
44 - match the file-per-type layout.
45
46LICENSE
47 0bsd. see LICENSE.
48
49┌──────────────────────────────────────────────────────────────┐
50│ krz.sh │
51└──────────────────────────────────────────────────────────────┘
README.org added +45
@@ -0,0 +1,45 @@
1#+title: octosentry
2
3* what
4macos menu bar app. aggregates github security alerts (dependabot,
5code scanning, secret scanning) across your repos into one
6severity-ranked feed. deep-links out to github.com to act.
7
8* does
9- one feed across all three alert types on a single severity scale
10- source badge, repo, github severity label, one-line summary, age
11- click an alert to open it on github.com
12- errors and unavailable sources shown in the popover, not hidden
13- add or remove watched repos from the popover; a background poll
14 keeps the feed fresh while closed
15- sign in with github via device authorization; no password or
16 token typed into the app
17- no third-party dependencies. swiftui and urlsession.
18
19* requires
20macos 14 or later. a github account with access to the repos you
21watch.
22
23* use
241. build and run.
252. click the shield icon, Sign in with GitHub. you get a short
26 code; Open GitHub, enter it, authorize.
273. click the gear to add or remove repos (owner/repo).
284. click an alert to open it on github.com.
29
30an unavailable source usually means that alert type is disabled for
31the repo or your account lacks permission, not that something broke.
32device flow grants the security_events scope, which may not cover
33dependabot alerts on private repos.
34
35* build
36open octosentry.xcodeproj and run the octosentry scheme. targets
37macos 14, swift 6 strict concurrency, no package dependencies.
38
39* contributing
40- no third-party dependencies. hard constraint.
41- swift 6 strict concurrency stays on; new code compiles clean.
42- match the file-per-type layout.
43
44* license
450bsd. see LICENSE.