Appearance
Mobile Diagnostics
Hive now keeps a persistent frontend diagnostics log inside the app so mobile-only issues can be debugged without attaching a remote inspector.
Where To Look
- Open the app and go to Logs.
- Use the Frontend tab for Vue/WebView/xterm/mobile lifecycle diagnostics.
- Use the App tab for Rust/Tauri backend logs.
- Use the Daemon tab for logs streamed from the connected
hivednode.
What The Frontend Log Captures
- App startup environment: user agent, touch capability, viewport metrics, keyboard inset.
- Viewport and virtual-keyboard adjustments from
window,visualViewport, and focus events. - Resume / reconnect handling: blur, focus, visibility changes, websocket probe decisions, and session recovery.
- Terminal lifecycle: attach, detach, dispose, focus ownership changes, PTY resize sends, and forced resize resyncs.
- IME / suggestion handling in the xterm helper textarea.
- Session history timing and replay decisions.
- Unhandled browser errors and promise rejections.
- Existing
console.*output from the frontend, persisted into the same log ring buffer.
Toolbar Actions
- Copy copies the currently displayed (and filtered) log lines to the clipboard. Available on every tab.
- Clear is available on the Frontend and App tabs:
- On the Frontend tab it wipes only the in-memory frontend diagnostics log.
- On the App tab it deletes the
hive-app.log.*files on disk. The active file may keep filling until the next daily rollover or app restart.
- The Daemon tab has no Clear button - those logs live on the remote
hivednode.
Retention
- The frontend diagnostics log is stored in browser storage under a bounded ring buffer.
- It typically survives normal app reloads/restarts on mobile because it is not held only in memory.
Practical Debug Flow
- Reproduce the mobile issue.
- Open Logs → Frontend.
- Search for one of:
viewportconnectionterminalsession-historyterminal-imepty-input
- Correlate those timestamps with the App or Daemon tabs when needed.
Pulling The Buffer From The CLI
When you can't (or don't want to) open the app to read logs - phone is locked, app is on a slow link, you want a saveable dump - fetch the same buffers from any machine that has the hive CLI and the daemon's token:
bash
hive clients ls # find app connection_id and node IDs
hive logs frontend --client <connection-id> --lines 1500 # entire Vue diagnostics buffer
hive logs app --client <connection-id> --lines 2000 # Rust-side app log
hive logs daemon --lines 1000 # daemon log of the connected nodeSee Remote Log Fetch for the full command reference, wire protocol, and limits.