Download package
Package Versions

Website package currently available

Use this as the source of truth when debugging device installs. Devices also report their installed agent version back to Device Hub.

Full Package
2026.05.01.8
Device Agent
2026.05.01.8
Chrome Extension
1.3.0
Android Native
0.2.0 source
Manifest
VersionStatusDateSummary
2026.05.01.8current2026-05-03Three fixes: (1) em-dash hotfix for v0.6 (Windows PowerShell 5.1 was misreading BOM-less UTF-8 and failing to parse the API-key error messages); (2) wscript.exe + VBS launcher so the PowerShell window no longer flashes on each scheduled run; (3) rolling local log at %LOCALAPPDATA%\OpenBrain\device-agent.log plus server-side error reports + stale-heartbeat Telegram alerts -- helper failures are no longer silent.
2026.05.01.6superseded2026-05-03Helper hardening -- installer + runtime now reject API keys with non-printable bytes or <32 chars (fixes the silent corrupt-key install caused by a stray Ctrl+V at the SecureString prompt). Note: the v0.6 PowerShell files contained em-dashes that broke parsing on Windows PowerShell 5.1 -- superseded by v0.8.
2026.05.01.5previous2026-05-01Windows command wrappers bypass execution policy and work immediately after install.
Device Setup Key

Create or remember the key for this browser session

Use this helper before installing a new laptop or phone. It creates a scoped Open Brain key from your dashboard session, or temporarily remembers a key you paste here, so you can copy it when the installer asks. The key is kept in this browser session only.

No device setup key is staged yet. If you're already authenticated against the dashboard, the key will load from your session automatically β€” otherwise paste an existing scoped key below + click Remember for session, or click Create Scoped Device Key to mint a new one (requires master-key auth).

Windows

Run this in PowerShell on the target machine. It installs Task Scheduler jobs for restart and sleep recovery, then asks which automatic summaries you consent to enable.

iwr https://open-brain-project-production.up.railway.app/install-device-capture.ps1 -UseB | iex

Linux

Run this in a shell on the target machine. It configures user systemd timers or cron and writes a local consent manifest.

curl -sL https://open-brain-project-production.up.railway.app/install-device-capture.sh | sh

macOS

Run this in Terminal. It uses LaunchAgents for heartbeat and hourly summaries. Install Homebrew jq and sqlite first if prompted.

curl -sL https://open-brain-project-production.up.railway.app/install-device-capture.sh | sh

Android Termux

Run this inside Termux. It creates cron jobs, a Termux:Boot script and a Termux:Widget shortcut for consented summaries.

curl -sL https://open-brain-project-production.up.railway.app/install-device-capture.sh | sh
Transparent Automatic Tracking

Enhanced capture is consent-based and summary-first

During install, Open Brain asks which collectors to enable and saves the choices locally as capture-consent.json. The background agent wakes hourly but uses a balanced cadence so collectors are spread through the day. Browser extension captures can carry the same device/cadence/consent metadata when enabled. It sends summaries to Capture Inbox; it does not upload keystrokes, hidden screenshots, clipboard contents, cookies, passwords, private app screens, raw browser databases, diffs, or file contents.

Can Be Automated

  • Browser history summaries for Chrome, Edge, Chromium and Brave profiles where available
  • Browser download metadata summaries with domains and file types only
  • Bookmark domain summaries without full URLs or titles
  • Document filename, extension, size and modified-date summaries from consented folders
  • Running app/process name summaries without command arguments or window text
  • Focused app/window title snapshots without keystrokes, screenshots or clipboard capture
  • Git/project summaries with repo name, branch, dirty count and latest commit subject only
  • Android native usage, notification and allowlisted visible-session summaries after Android permission grants
  • Machine-query metadata for each capture, including device id, collector, and time window
  • Chrome extension Browser Device ID and visible-page metadata for manual page/session captures

Kept Out By Design

  • No keystroke or password capture
  • No hidden screenshots or screen recording
  • No clipboard capture
  • No Git diffs, remotes, file contents or secret scanning uploads
  • No cookie, password-store, session-token or raw browser database upload
  • No scraping of private social media messages
  • No direct durable writes from device automation
  • No broad Android Accessibility logging; native visible-session capture is opt-in, allowlisted and redacted
  • No automatic capture of all messages typed on the machine

After Install

ob "Remember this from my other device"

Then review the staged capture at Capture Inbox filtered to Device Capture. Automated captures remain review-first.

Access Controls

Change capture access from the target machine

The installer adds an ob-access helper. Use it to increase or decrease safe summary collectors, change cadence, pause background capture, or run one collector for testing.

Windows

ob-access status
ob-access enable documents
ob-access disable shell
ob-access cadence compact
ob-access window 12
ob-access run Activity
ob-access run GitActivity
ob-access pause
ob-access resume
ob-access run BrowserHistory

Linux / Android

ob-access status
ob-access enable documents
ob-access disable shell
ob-access cadence compact
ob-access window 12
ob-access project-paths "$HOME/code_projects:$HOME/Documents"
ob-access run activity
ob-access run git-activity
ob-access pause
ob-access resume
ob-access run browser-history
Deployment Instructions

Install on each platform

Windows Laptop

  1. Open PowerShell as the signed-in user.
  2. Run the Windows installer command shown above.
  3. Enter a scoped Open Brain API key and a device id.
  4. Open a new PowerShell window and test ob "test from windows".
  5. Check Task Scheduler for OpenBrainDeviceHeartbeat and OpenBrainDeviceCapture.
  6. Review captures in Capture Inbox.

Auto-start tries Task Scheduler first. If Windows denies task registration, the installer creates a per-user Startup loop that begins at login, heartbeats every five minutes and runs capture hourly. The installer also adds ob.cmd and ob-access.cmd wrappers to the user PATH so execution policy does not block normal capture commands.

Linux Laptop

  1. Open a terminal.
  2. Run the Linux installer command shown above.
  3. Enter a scoped Open Brain API key and a device id.
  4. Choose whether to enable browser-history and shell-history summaries.
  5. Choose whether to enable enhanced summaries for downloads, bookmarks, documents, running apps, focused activity and Git projects.
  6. Open a new shell and test ob "test from linux".
  7. Check systemctl --user list-timers | grep openbrain or crontab -l.

Auto-start uses user systemd timers when available and cron as a fallback.

Android Termux

  1. Install Termux, Termux:API and Termux:Boot.
  2. Open Termux and run the Android/Linux installer command shown above.
  3. Enter a scoped Open Brain API key and a device id.
  4. Choose which Termux summaries to enable and review the generated consent manifest.
  5. Disable Android battery optimisation for Termux.
  6. Open Termux:Boot once after install so Android registers it.
  7. Test ob "test from android" and review Capture Inbox.

Android can auto-run Termux cron when Termux is allowed to run. Full cross-app app usage needs the native Android app with explicit Usage Access or Notification Access permissions.

macOS LaunchAgent

  1. Install Homebrew dependencies if prompted: brew install jq sqlite.
  2. Run the macOS installer command shown above.
  3. Choose enhanced collectors only where you are comfortable granting local access.
  4. Check launchctl list | grep openbrain and Device Hub heartbeat.
  5. Use ob-access status to confirm package version and collectors.

The current macOS path is a LaunchAgent shell package. A signed native menu-bar app is still the future polished package.

Android Native App

  1. Use this when you want richer Android app-usage, notification and visible LLM/browser session summaries.
  2. Build the current scaffold from android-capture-app/ with Android Studio.
  3. Install the debug APK on your own Android device.
  4. Enter the Open Brain API URL, scoped API key and device id.
  5. Enable Usage Access and, optionally, Notification Access.
  6. Optionally enable Accessibility visible-session capture, review the package allowlist and grant the Android Accessibility permission.
  7. Send a test capture and review source=android-native in Capture Inbox.

The native app is consent-first. It does not record taps, keystrokes, passwords, editable input fields, hidden screenshots, raw browser databases or non-allowlisted app screens.

Chrome Extension

  1. Download the full package or the Chrome extension ZIP.
  2. Unzip it locally.
  3. Open Chrome at chrome://extensions.
  4. Enable Developer mode.
  5. Click Load unpacked and select the chrome-extension folder.
  6. Open the extension popup, set the API URL and API key, then test Remember, Recall and screenshot capture.
  7. Set a Browser Device ID and enable Enhanced consent only if you want manual browser captures to include visible-page metadata.

Screenshots are manual visible-tab captures only and are staged as sensitive Capture Inbox items.

Uninstall / Reinstall

Remove or refresh a device package

For a normal upgrade, rerun the installer. It refreshes helpers and startup jobs. Use the uninstall commands when you want to remove the agent or reset the device cleanly.

Windows

Unregister-ScheduledTask -TaskName OpenBrainDeviceHeartbeat -Confirm:$false -ErrorAction SilentlyContinue
Unregister-ScheduledTask -TaskName OpenBrainDeviceCapture -Confirm:$false -ErrorAction SilentlyContinue
Get-ScheduledTask -TaskName "OpenBrainDevice*" -ErrorAction SilentlyContinue | Unregister-ScheduledTask -Confirm:$false -ErrorAction SilentlyContinue
Remove-Item "$env:APPDATA\Microsoft\Windows\Start Menu\Programs\Startup\OpenBrainDeviceCapture.cmd" -Force -ErrorAction SilentlyContinue
Remove-Item "$env:LOCALAPPDATA\OpenBrain" -Recurse -Force

# Optional: clear user env vars
[Environment]::SetEnvironmentVariable("OPEN_BRAIN_API_KEY", $null, "User")
[Environment]::SetEnvironmentVariable("OPEN_BRAIN_DEVICE_ID", $null, "User")

Reinstall by running the Windows installer again. Remove the profile aliases manually only if you want to clean up ob and ob-access.

Linux

systemctl --user disable --now openbrain-device-heartbeat.timer openbrain-device-capture.timer 2>/dev/null || true
rm -f ~/.config/systemd/user/openbrain-device-heartbeat.* ~/.config/systemd/user/openbrain-device-capture.*
systemctl --user daemon-reload 2>/dev/null || true
crontab -l 2>/dev/null | grep -v "openbrain-device-agent" | crontab -
rm -f ~/.local/bin/open-brain-capture ~/.local/bin/open-brain-device-agent ~/.local/bin/open-brain-access

# Optional full reset
rm -rf ~/.config/openbrain

Reinstall with the Linux installer. Skip the final config reset if you want to keep the existing device id and key.

macOS

launchctl unload -w ~/Library/LaunchAgents/uk.openbrain.device-heartbeat.plist 2>/dev/null || true
launchctl unload -w ~/Library/LaunchAgents/uk.openbrain.device-capture.plist 2>/dev/null || true
rm -f ~/Library/LaunchAgents/uk.openbrain.device-heartbeat.plist ~/Library/LaunchAgents/uk.openbrain.device-capture.plist
rm -f ~/.local/bin/open-brain-capture ~/.local/bin/open-brain-device-agent ~/.local/bin/open-brain-access

# Optional full reset
rm -rf ~/.config/openbrain

Reinstall with the macOS installer command. Reopen Terminal afterwards so the ob and ob-access helpers are available.

Android Termux

crontab -l 2>/dev/null | grep -v "openbrain-device-agent" | crontab -
rm -f ~/bin/open-brain-capture ~/bin/open-brain-device-agent ~/bin/open-brain-access
rm -f ~/.shortcuts/open-brain-capture
rm -f ~/.termux/boot/openbrain-start

# Optional full reset
rm -rf ~/.config/openbrain

Reinstall from Termux with the Linux/Android installer, then reopen Termux:Boot and keep Termux exempt from battery optimisation.

Apple Devices

What macOS and iOS packages will need

macOS

The current website package includes a LaunchAgent shell installer for heartbeat and scheduled summaries. The polished product path is still a signed, notarized macOS app or pkg installer with a native consent screen and clear Full Disk Access prompts when browser/document metadata collectors are enabled.

  • LaunchAgent for startup and sleep recovery
  • Menu bar status item for pause/resume and consent visibility
  • Safari/Chrome/Brave summary collectors where permissions allow
  • Optional companion Safari Web Extension for browser page/session capture

iOS / iPadOS

The right package is a native App Store or TestFlight app plus a Share Extension. iOS will not allow background scraping of other apps, browser history, keystrokes or private messages. Useful capture should be explicit and OS-permission based.

  • Share Extension for sending pages, text and files into Open Brain
  • Shortcuts actions for manual or scheduled notes
  • Optional Safari Web Extension for browser page captures
  • BackgroundTasks for limited heartbeat/sync, subject to iOS scheduling

Android Boundaries

The Termux package supports quick notes, heartbeat, startup recovery and optional notification metadata summaries. It does not silently scrape private social app content, taps, keystrokes or Android Chrome history. Richer Android app-usage and visible LLM/browser session capture requires the native Android app with explicit Usage Access, Notification Access or Accessibility consent.

Chrome Extension

The package includes a Chrome extension for selected text, page summaries, right-click capture, Open Brain search, manual ChatGPT/Claude session summaries and manual visible-tab screenshots. It now mirrors the installer metadata model with Browser Device ID, consent status, capture mode, cadence/window and machine-query tags. Optional page metadata records visible headings and linked-domain counts only. Screenshots are compressed, marked sensitive and staged in Capture Inbox for review.