This release includes 1 breaking change for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
+3 more
Affected surfaces
ReleasePort's take
Light signalVersion v0.6.7βremoteβaccessβpassphrase adds a browserβbased remote terminal to Beacon and introduces an allowβlist for shell execution, while renaming the `beacon master` CLI command.
Why it matters: The new remote terminal requires rebuilding agent binaries; older agents will ignore the `terminal_open` command. The added shell allowβlist (fixing Gosec G702) restricts executable shells to approved entries.
Summary
AI summaryUpdates β¨ Highlights, π οΈ What's included, and π What's next across a mixed release.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Adds remote terminal capability to Beacon via browser UI. Adds remote terminal capability to Beacon via browser UI. Source: llm_adapter@2026-05-30 Confidence: high |
β |
| Feature | Low |
Adds Deploy button on device detail page for projectβname triggered deployment. Adds Deploy button on device detail page for projectβname triggered deployment. Source: llm_adapter@2026-05-30 Confidence: high |
β |
| Feature | Low |
Renames command `beacon master` to `beacon start`; keeps alias for backward compatibility. Renames command `beacon master` to `beacon start`; keeps alias for backward compatibility. Source: llm_adapter@2026-05-30 Confidence: low |
β |
| Bugfix | Low |
Implements shell allowβlist (Gosec G702 fix) to restrict executable shells. Implements shell allowβlist (Gosec G702 fix) to restrict executable shells. Source: llm_adapter@2026-05-30 Confidence: low |
β |
| Bugfix | Low |
Requires agent binary rebuild for remote terminal functionality; older agents ignore `terminal_open` command. Requires agent binary rebuild for remote terminal functionality; older agents ignore `terminal_open` command. Source: llm_adapter@2026-05-30 Confidence: low |
β |
Full changelog
π Beacon Release β Remote Terminal & Command Rename
This release adds remote terminal to Beacon β open a shell on any device from your browser, through BeaconInfra. No SSH port, no VPN, no port forwarding. Also renames beacon master to beacon start.
β¨ Highlights
π Tunneling on HA OS
With the beacon home-assistant OS addon you can now enable tunneling (remote access).
π₯οΈ Remote Terminal and Tunneling
The cloud relays a shell session (PTY) between your browser and the Beacon agent β no SSH port, no VPN needed. Sessions auto-expire after 15 minutes. Set a remote-access passphrase to require a device-verified second factor before any session opens.
How it works:
- Click "Open Terminal" on a device in the dashboard (Remote Access tab or the Remote Access page)
- BeaconInfra creates a session and sends a
terminal_openpiggyback command to the device - The Beacon agent picks it up on the next heartbeat, dials back to the cloud via WebSocket, and spawns a local shell
- Browser β Cloud Hub β Agent PTY β bidirectional relay, binary-safe
How it stays secure β the cloud never sees your passphrase:
The passphrase is never stored. Setup writes only an Argon2id-derived key, its salt, and the cost parameters to ~/.beacon/remote-access.json (mode 0600).
At session time the agent issues a single-use, short-lived nonce. The browser derives the key from your passphrase and returns a proof = HMAC-SHA256(key, nonce β action β session_id). The agent recomputes and compares it in constant time. BeaconInfra only relays this challenge β it never sees the passphrase or any reusable proof, so a fully compromised cloud still cannot open a session.
A successful unlock is in-memory, session-bound, and TTL-limited, and is cleared on restart (fail-closed).
Repeated wrong attempts trigger rate-limiting / backoff to slow brute force.
Security:
- One-time
btt_tokens per session β SHA-256 hashed, only the hash stored server-side - Sessions auto-expire after 15 minutes (max duration) or 5 minutes idle
- Shell restricted to an allow-list (
/bin/bash,/bin/zsh,/bin/sh,/bin/ash,/bin/dash,/usr/bin/bash,/usr/bin/zsh,/usr/bin/fish) - The agent runs the shell as its own OS user β no privilege escalation
- A stale session reaper runs every 60s to clean up abandoned sessions
β¨οΈ beacon start (was beacon master)
The command to start the agent is now beacon start. More intuitive, less jargon. beacon master still works as an alias for backward compatibility β existing scripts and systemd units are unaffected.
π Deploy from beaconinfra dashboard
The device detail page now has a prominent "Deploy" button that opens a dialog where you can enter a project name. Triggers the same deploy flow as a new tag detection.
π οΈ What's included
- Remote terminal:
terminal_openpiggyback command, agent-side PTY spawner, cloud WebSocket relay hub - Browser terminal UI (xterm.js) with resize support and session status feedback
- Terminal session API:
POST /api/terminal/sessions,GET .../sessions/:id,POST .../sessions/:id/terminate - Browser and agent WebSocket endpoints with JWT and
btt_token auth - Shell allow-list (gosec G702 fix) β rejects arbitrary
$SHELLvalues - Stale session reaper with
ExpireStalestorage method - Structured logging (zerolog) for all terminal events: session create, browser connect, agent connect, relay start, close
beacon masterβbeacon startrename across both repos (agent + cloud),masterkept as Cobra alias- Deploy dialog on device detail page with project name input
- Terminal accessible from Remote Access page (device dropdown) and device detail Remote Access tab
π What's next
- Agent binary rebuild required β devices must run this version for terminal to work. Older agents silently ignore the
terminal_opencommand. - Terminal sessions are single-user, single-device for now. Multi-tab and session sharing are future work.
- The deploy dialog currently triggers a device-level deploy. Project-targeted deploy via piggyback commands is planned.
Full Changelog: https://github.com/Bajusz15/beacon/compare/v0.6.3-remote-ssh...v0.6.4-remote-ssh-access
Full Changelog: https://github.com/Bajusz15/beacon/compare/v0.6.3-remote-ssh...v0.6.5-remote-tty
What's Changed
- Feature: Local Secrets Manager by @Bajusz15 in https://github.com/Bajusz15/beacon/pull/159
Full Changelog: https://github.com/Bajusz15/beacon/compare/0.6.6-remote-tty-ha-os-tunnel...v0.6.7-remote-access-passphrase
Breaking Changes
- Renames `beacon master` to `beacon start`; the old alias remains for backward compatibility.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About Beacon
All releases βRelated context
Related tools
Earlier breaking changes
- v0.6.8-remote-access-pass Renames command `beacon master` to `beacon start`; alias retained for compatibility.
- v0.6.6-remote-tty-ha-os-tunnel Renames command `beacon master` to `beacon start`; alias retained for compatibility.
Beta — feedback welcome: [email protected]