How it works
Screen capture that only fires at moments that mean something. The full technical description of framewatch — what it does, what it is made of, and what state it is in.
The premise
Continuous screen capture floods a coding agent's context with near-duplicate frames. An on-demand screenshot misses everything in between. framewatch sits in the middle: it watches one window and writes a frame only at semantically meaningful moments.
It captures when the window settles after a burst of change, when a spinner starts or stops animating, and on a throttle when a volatile region such as a counter or a log tail updates. Each frame carries timestamped metadata describing why it was taken, so an agent can reconstruct what happened without a frame stream.
What is included
Event-driven capture on settle, on busy-indicator transitions and on throttled volatile regions
Timestamped metadata alongside every frame so an agent knows why it exists
Published to crates.io with docs.rs documentation and CI
Single-binary Rust, no runtime dependencies
How it is built
framewatch is built on Rust, Windows API and crates.io.
The repository is 100% Rust by volume — a description of what the work actually consists of rather than what it is filed under.
It carries 42 commits since Jun 2026, most recently changed in Aug 2026.
The method behind it
Every project here starts as a written specification, and the specification stays authoritative once code exists. The repository keeps a build plan with live status, an append-only decision log recording where the implementation departed from the plan, and a handoff document describing the true current state — including the parts that are not finished.
That is why a portfolio this wide is not a shallow one, and it is why this page can describe the product without overstating it.
Current state
Shipping. Released and usable today.
The source is public. Read it rather than taking this page for it.
Next
Install framewatch
Published to crates.io. Pick the capture backend for your platform — the detection engine is the same on all three.
cargo install framewatch --features wgc
cargo install framewatch --features macos
cargo install framewatch --features linux-x11
cargo add framewatch --no-default-features
Add gui for the window picker, or record for narrated capture. macOS asks for Screen Recording permission on first run; Wayland is not supported yet.
Questions, or something it does not do yet? Email dmoore@dwmmholdings.com