Overview
DevInbox is a unified inbox that pulls everything assigned to you across Linear, GitHub, and Slack into one prioritised list. Instead of switching between tabs and apps to check what needs your attention, DevInbox merges all your assignments into a single, sortable view.
DevInbox runs as a web app, a native macOS menu-bar app, and an iOS app — all powered by the same codebase at applib.dev/dev-inbox/app.
Unified list
Linear issues, GitHub pull requests, and Slack starred messages sorted by priority or staleness.
Real-time notifications
Browser push notifications and native OS badges alert you when new items are assigned; a background job and configurable polling keep the list up to date.
Credential-safe
When signed in, API tokens and preferences are stored in your account on our servers (encrypted). When not signed in, they exist only for the current session. We never transmit credentials to third parties.
One-click actions
Open any item directly in Linear, GitHub, or Slack with a single click.
Getting started
DevInbox is free to use — no install or subscription required for the web app. To get started:
- Open applib.dev/dev-inbox/app in your browser.
- Sign in with Google (optional but recommended). Signing in stores your credentials and preferences in your account so they sync across devices and enable remote push notifications. Without sign-in you can still use the app in this session — credentials and preferences are not persisted and are lost on refresh.
- Connect at least one service: Linear, GitHub, or Slack.
- Your assignments appear immediately in the inbox.
Connecting Linear
DevInbox supports two ways to connect a Linear workspace. You can add multiple workspaces — all their issues are merged into one list.
Option A — Sign in with Linear (OAuth)
Click Sign in with Linear in the DevInbox settings panel. You will be redirected to Linear to authorise the app. After authorisation you are sent back to DevInbox with the connection established automatically.
OAuth connections are scoped to read-only access for issues assigned to you. No write permissions are requested.
Option B — API key
- In Linear, go to Settings → API → Personal API keys and click Create key.
- Copy the generated key.
- In DevInbox, click Add Linear workspace (API key), enter an optional label for this workspace and paste your API key, then click Save.
API keys are stored in your browser or, when you are signed in, encrypted in your account. They are never sent to third-party services.
Connecting GitHub
DevInbox uses a GitHub Personal Access Token (PAT) to fetch pull requests and issues assigned to you, as well as review requests.
Creating a GitHub PAT
- In GitHub, go to Settings → Developer settings → Personal access tokens → Tokens (classic) and click Generate new token (classic).
- Give the token a descriptive name (e.g. DevInbox) and set an expiration.
- Under Select scopes enable
repo. This is the only scope DevInbox needs to read your assigned issues and pull requests. - Click Generate token and copy the token.
Adding the token to DevInbox
- Open DevInbox and click Add GitHub account.
- Paste your token and click Save.
repo scope.Connecting Slack
DevInbox fetches your starred (saved) messages from Slack. Because Slack does not offer a simple personal token flow, you need to create a minimal Slack app and authorise it with your Slack user account.
Creating a Slack app
- Go to api.slack.com/apps and click Create New App → From scratch.
- Name your app (e.g. DevInbox) and select your workspace.
- Under OAuth & Permissions → User Token Scopes add the scope
stars:read. - Click Install to Workspace and approve the permissions. Slack will show you a User OAuth Token starting with
xoxp-. - Copy that token.
Adding the token to DevInbox
- Open DevInbox and click Add Slack account.
- Paste your
xoxp-token and click Save.
Notifications
Local (browser) notifications
DevInbox can show browser notifications for new assignments detected during a polling cycle. Click Enable notifications in the app banner and grant permission when your browser asks.
On macOS and iOS the native notification system is used instead of the browser API, so notifications work even when the app is in the background.
Remote push notifications
When you sign in with Google and enable push notifications, DevInbox registers a Web Push subscription on the server. A background job checks your accounts and sends a push notification when new items are assigned — so you are notified even when DevInbox is not open.
Polling interval
Control how often DevInbox fetches from your services using the Poll every selector (1, 5, 15, or 30 minutes). Shorter intervals consume more API quota; longer intervals reduce background requests.
Platforms
DevInbox is available on three platforms, all sharing the same data and credentials:
Web
Open applib.dev/dev-inbox/app in any modern browser. No install required. Works on any operating system.
Open app →macOS
Native menu-bar app. Runs in the background with a badge showing your open item count. Shortcut: ⌘ Shift D.
Coming soon for public accessiOS
Native iOS app with home-screen badge and local push notifications. Syncs credentials with your web session.
Coming soon for public accessThe macOS and iOS apps are currently available to early-access users. The web app is free and open to everyone.
Privacy & data
Credential storage
When you use DevInbox without signing in, credentials and preferences exist only in the current session and are lost when you refresh or close the tab. Nothing is written to the browser or our servers.
When you sign in with Google, credentials and preferences are encrypted and stored in the DevInbox database via our API, enabling cross-device sync and remote push notifications. The raw credential values are never readable by anyone without the decryption key.
Data we access
| Service | What we read | What we write |
|---|---|---|
| Linear | Issues assigned to you | Nothing |
| GitHub | Assigned issues & PRs, review requests | Nothing |
| Slack | Your starred (saved) messages | Nothing |
DevInbox is a read-only client. We do not post comments, close issues, merge pull requests, or perform any write operations on your behalf.
For full details, see our Privacy Policy.
FAQ
Do I need to sign in with Google?▾
No. You can use DevInbox without signing in for the current session; credentials and preferences are not persisted. Signing in stores them in your account and enables cross-device sync and remote push notifications.
Can I connect multiple Linear workspaces?▾
Yes. Add as many Linear workspaces as you like — either via OAuth or individual API keys. All issues from all workspaces are merged into one list.
Why are new items not showing up immediately?▾
DevInbox fetches items on a configurable polling schedule (1–30 minutes). Use a shorter Poll every interval and enable remote push notifications to get notified as soon as new items are detected.
My items disappeared after refreshing or closing the tab.▾
If you are not signed in, credentials and preferences are not persisted and are lost on refresh. Sign in with Google to store them in your account so they sync across devices and survive refreshes.
Does DevInbox work offline?▾
Yes — the last fetched items are cached locally and displayed when you are offline. The list will not update until connectivity is restored and a fresh fetch completes.
Is DevInbox free?▾
The web app is completely free to use with no account required. Native macOS and iOS apps are available to early-access users.
How do I revoke access?▾
For Linear OAuth connections, revoke access in Linear → Settings → My account → Authorized applications. For API keys and PATs, delete the key directly in Linear or GitHub. For Slack, uninstall the Slack app you created or revoke the token from the Slack API dashboard.