app
Adom Bridge
Public Made by Adomby adom
Adom Bridge unleashes your AI onto your full PC: full power, full safety. The AI breaks out of the container it runs in and onto your real machine, managing and running your entire laptop as you: launch apps, move files, drive any window, control KiCad, Fusion 360 or your real signed-in browser. Works with any AI, cloud or local (Claude Desktop, Claude Code, Codex), no Hydrogen required. Bridge and its bridges are an operating system for AI, with managed Node and Python runtimes, and a human-onl
← Commit history
Publish 2.1.114
4 files changed
+7−4
dist/linux/adom-bridge⋯ 1 unchanged line ⋯
package.json+1−1@@ -1,6 +1,6 @@ { "slug": "adom-bridge", - "version": "2.1.113", + "version": "2.1.114", "type": "app", "brief": "Adom Bridge unleashes your AI onto your full PC: full power, full safety. The AI breaks out of the container it runs in and onto your real machine, managing and running your entire laptop as you: launch apps, move files, drive any window, control KiCad, Fusion 360 or your real signed-in browser. Works with any AI, cloud or local (Claude Desktop, Claude Code, Codex), no Hydrogen required. Bridge and its bridges are an operating system for AI, with managed Node and Python runtimes, and a human-only permission system keeps you in charge of every side-effecting command.", "description": "Install this package in a cloud or Hydrogen Desktop container, not on the PC. It delivers two things: the Linux adom-bridge-cli (linked onto PATH) and the Claude skill set that teaches an AI every desktop verb (shell, files, screenshots, windows, notifications, KiCad, Fusion 360, browser automation). The CLI drives the Adom Bridge app running on your Windows PC over the relay; the Windows app itself is the separate installer in the Download box, not part of this package. Run adom-wiki pkg update to keep the CLI and skills current.",
page.json+1−1@@ -1,6 +1,6 @@ { "slug": "adom-bridge",- "version": "2.1.113",+ "version": "2.1.114", "type": "app", "description": "Install this package in a cloud or Hydrogen Desktop container, not on the PC. It delivers two things: the Linux adom-bridge-cli (linked onto PATH) and the Claude skill set that teaches an AI every desktop verb (shell, files, screenshots, windows, notifications, KiCad, Fusion 360, browser automation). The CLI drives the Adom Bridge app running on your Windows PC over the relay; the Windows app itself is the separate installer in the Download box, not part of this package. Run adom-wiki pkg update to keep the CLI and skills current.", "keywords": [
skills/adom-bridge-recording/SKILL.md+5−2@@ -1,14 +1,17 @@ --- name: adom-bridge-recording -description: Record the user's screen with Adom Bridge's NATIVE recorder (v2.1.35, wiki #143) - desktop_record_start captures one monitor plus the system audio mix into an H.264/AAC MP4 with no browser and a persistent on-screen recording caption; desktop_record_window_* records a single window in the background; desktop_record_stop/status/list manage takes. Chrome screen-share recording (picker consent, WebM) is the puppeteer bridge's pup_screen_record_* - a different tool. +description: Record the user's screen with Adom Bridge's NATIVE recorder (v2.1.35, wiki #143) - desktop_record_start captures one monitor plus the system audio mix into an H.264/AAC MP4 with no browser and a 4x4 pixel teal dot in a screen corner as the recording tell; desktop_record_window_* records a single window in the background; desktop_record_stop/status/list manage takes. Chrome screen-share recording (picker consent, WebM) is the puppeteer bridge's pup_screen_record_* - a different tool. --- ## v2.1.35: the native recorder (read this first) -`desktop_record_start` is ab-core now. It records ONE MONITOR (`monitor`: index, `"primary"` or a device name; default primary) with Windows Graphics Capture and the SYSTEM AUDIO mix with WASAPI loopback, muxed to an H.264/AAC MP4 under `%TEMP%\adom-bridge-recordings\` on the desktop machine. No browser, no OS picker, no HUD process. Consent is a persistent caption at the top of the screen that stays for the whole take. +`desktop_record_start` is ab-core now. It records ONE MONITOR (`monitor`: index, `"primary"` or a device name; default primary) with Windows Graphics Capture and the SYSTEM AUDIO mix with WASAPI loopback, muxed to an H.264/AAC MP4 under `%TEMP%\adom-bridge-recordings\` on the desktop machine. No browser, no OS picker, no HUD process. The recording tell is a 4x4 pixel teal square in the bottom-right of the work area (v2.1.113): it is there for the whole take, so a recording can never run with nothing on screen, and it carries no motion to distort when a clip is sped up 10x. The full-width caption it replaced sat in the middle of every frame. If you want something a viewer can actually see, `desktop_orbital` shows the real Orbital Lab mark in a corner and is its own verb, independent of recording. - Start: `desktop_record_start {"monitor":0, "fps":30, "audio":true, "maxDurationMs":600000, "reason":"..."}` -> `{recordingId, path, encoder, hardwareEncoder, audio, audioNote?}`. `encoder` is the H.264 MFT Media Foundation chose; `hardwareEncoder:true` = NVENC / Quick Sync / AMF. - Stop: `desktop_record_stop {"recordingId"}` (id optional when one take is running) -> the finalized file, bytes, frames, audioFrames. Pull it with `pull_file`. +- Stop is BOUNDED (v2.1.104, wiki #189): it waits up to 15 s for the encoder to close the MP4. If the file is still being finalised it answers `{state:"finalising", stillRunning:true, frames, bytes}` and KEEPS the take registered: poll `desktop_record_status {recordingId}` until `state` is `finalised` (or `failed` with `finaliseError`), then call `desktop_record_stop {recordingId}` once more to collect it. A take is never dropped. The file is fragmented MP4 and grows on disk while recording, so `bytes` in status is live; do not pull a file before `finalised`. +- `desktop_record_encoders` lists the codecs this box can hardware-encode: `{codecs:{h264:{available,hardware,encoders:[{name,hardware}]}, h265:{...}}, default:"h264"}`. h264 is the default (most compatible). **HEVC works** too: `codec:"h265"` records an HEVC MP4 (~40% smaller at similar quality; needs a modern player). HEVC uses the GPU path (a D3D11 VideoProcessor makes NV12 for the hardware H.265 encoder), so `gpu:false` is ignored for h265. `bitrate` (bits/s) and `fps` are also start args. +- Status carries the encoder's own counters: `encodedFrames`, `encodeBacklog` (received minus encoded), `sinkOutstanding`, `encodeFps`, plus `droppedFrames` (pool empty, or ticks skipped because the encoder was more than 2 s behind). A rising `encodeBacklog` or a low `encodeFps` at a big resolution means the encoder cannot keep up: pass a lower `bitrate` / `fps`, or record a window instead of a 4K monitor. - Status: `desktop_record_status {"recordingId"?}`; no id lists every registered take (`autoStopped:true` = it hit `maxDurationMs`, call stop to collect it). - List: `desktop_record_list` = finished MP4s on disk, newest first. - Window mode: give `hwnd` or `titleContains` instead of `monitor` (or call `desktop_record_window_start`): background-capturable, no audio.