| Age | Commit message (Expand) | Author |
| 2026-10-17 | Start a local Chrome when the target is an explicit local and none answers | Igor Soarez |
| 2026-10-15 | feat(cdp): report a BU_CDP_WS pin in status, /browser-target and the prompt | Igor Soarez |
| 2026-10-14 | feat(cdp): /browser-target to switch browsers without leaving pi | Igor Soarez |
| 2026-10-14 | feat(cdp): default to the shared browser, and say so in /browser-status | Igor Soarez |
| 2026-10-12 | fix(daemon): let pi exit after a session has connected to the daemon (#40) | Aman Kumar |
| 2026-10-12 | fix: browser_download no longer hijacks the user's own downloads (#33) | Uttkarsh |
| 2026-10-11 | refactor: remove duplicate browser prompt instructions (#35) | Patrick Barattin |
| 2026-10-11 | test: keep host-provided packages out of dependencies (#36) | Uttkarsh |
| 2026-10-11 | fix(daemon): stop importing typebox in the daemon process (#38) | Aman Kumar |
| 2026-10-11 | fix: append browser state to the session only when it changes (#37) | Aman Kumar |
| 2026-10-11 | fix(daemon): resolve tsx from the filesystem when Node's resolver cannot see ... | PhysicistLeon |
| 2026-09-09 | feat: add per-tab request headers (#30) | astarring |
| 2026-08-06 | fix: accept Windows script paths and start the daemon from a real install (#23) | Aman Kumar |
| 2026-08-06 | fix: reconnect to Chrome only on explicit browser demand (#18) | Uttkarsh |
| 2026-08-02 | refactor: merge nine files whose reason to exist was gone | amankumarsingh77 |
| 2026-08-02 | refactor: act on the fallow audit | amankumarsingh77 |
| 2026-08-02 | refactor: daemon internals, and fix a leak the merge exposed | amankumarsingh77 |
| 2026-08-02 | refactor: one door from a tool to the browser | amankumarsingh77 |
| 2026-08-02 | refactor: one CDP transport, not two | amankumarsingh77 |
| 2026-08-02 | fix: make --browser-debug-clicks and BU_CDP_WS actually work | amankumarsingh77 |
| 2026-08-02 | feat!: remove the deep-research feature | amankumarsingh77 |
| 2026-08-02 | chore: make the boundary scanner see every cast, not just the unsafe forms | amankumarsingh77 |
| 2026-08-02 | refactor: tidy the whitespace the comment removal left behind | amankumarsingh77 |
| 2026-08-02 | refactor(test): strip comment noise | amankumarsingh77 |
| 2026-08-02 | fix(domains): report a page-side throw instead of blaming the ref | amankumarsingh77 |
| 2026-08-02 | fix(domains): one fill engine, so browser_fill stops lying about checkboxes | amankumarsingh77 |
| 2026-08-02 | fix(domains): keep element refs stable across a mutation | amankumarsingh77 |
| 2026-08-02 | fix(tool): stop the socket gate rejecting every tool call on Windows | amankumarsingh77 |
| 2026-08-02 | fix(cdp): route background-tab events to the tab they belong to | amankumarsingh77 |
| 2026-08-02 | fix(cdp): re-enable domains when re-attaching to a known tab | amankumarsingh77 |
| 2026-08-02 | test: fake browser client over a stub transport | amankumarsingh77 |
| 2026-08-02 | chore: fail the build on unguarded type assertions | amankumarsingh77 |
| 2026-08-02 | refactor: close the remaining unguarded type assertions | amankumarsingh77 |
| 2026-08-02 | refactor: validate JSON at every parse boundary | amankumarsingh77 |
| 2026-08-02 | fix(domains): stop fill_form misreporting select-by-label, let it fail | amankumarsingh77 |
| 2026-08-02 | fix(domains): restore fill_form and set_checked, drop the stale fork | amankumarsingh77 |
| 2026-08-02 | refactor(domains): share target resolution and CDP error mapping | amankumarsingh77 |
| 2026-08-02 | refactor(tools): declare concurrency in the tool definition | amankumarsingh77 |
| 2026-08-02 | refactor(cdp): validate event params against a typed table | amankumarsingh77 |
| 2026-08-02 | fix(domains): restore fail-closed focus check in browser_type | amankumarsingh77 |
| 2026-08-02 | refactor(domains): drop CDP casts, share the box-model unwrap | amankumarsingh77 |
| 2026-08-02 | fix(cdp): let evaluateJson target a specific session | amankumarsingh77 |
| 2026-08-02 | refactor(cdp): extract attachTo, getWindowId, evaluateJson helpers | amankumarsingh77 |
| 2026-08-02 | test(cdp): cover call/callOnTarget/callBrowser through a stub transport; coll... | amankumarsingh77 |
| 2026-08-02 | refactor(cdp): make session.call generic over the command table | amankumarsingh77 |
| 2026-08-02 | feat(cdp): add typed command table with validated decoders | amankumarsingh77 |
| 2026-08-02 | test: port remaining suites to node:test | amankumarsingh77 |
| 2026-08-02 | fix(test): split P5/P6/P10 into one node:test per original check() label | amankumarsingh77 |
| 2026-08-02 | chore(build): split tsconfig, typecheck tests, add node:test runner | amankumarsingh77 |
| 2026-07-26 | fix(profile): resolve replaced binaries and surface real launch failures | amankumarsingh77 |